批量替换数据库中一个地段的内容。这书数据库中一个字段 姓名:张效菁 <br/> 编号:0000</br> 魅丽宣言:
我想吧 0000 改成 0001
我数据库中有1000条这样的数据。我要把编号以此编好好。
比如姓名:张效菁 <br/> 编号:0001</br> 魅丽宣言:
姓名:张旭红 <br/> 编号:0002</br> 魅丽宣言:求解答。
我想吧 0000 改成 0001
我数据库中有1000条这样的数据。我要把编号以此编好好。
比如姓名:张效菁 <br/> 编号:0001</br> 魅丽宣言:
姓名:张旭红 <br/> 编号:0002</br> 魅丽宣言:求解答。
set 编号 = '0001'
where
姓名= '张效菁'
and 编号 = '0000'
IF OBJECT_ID('[tb]') IS NOT NULL DROP TABLE [tb]
GO
CREATE TABLE [tb]([name] VARCHAR(50))
INSERT [tb]
SELECT '姓名:张效菁 <br/> 编号:0000</br> 魅丽宣言:' UNION ALL
SELECT '姓名:张旭红 <br/> 编号:0000</br> 魅丽宣言:'
--------------开始查询--------------------------;WITH t AS
(
SELECT *,row_id=ROW_NUMBER() OVER(ORDER BY [name]) FROM [tb]
)
SELECT LEFT([name],CHARINDEX('0000',[name])-1)+RIGHT(10000+row_id,4)+RIGHT([name],LEN([name])-CHARINDEX('0000',[name])-3)
FROM t
----------------结果----------------------------
/*
姓名:张效菁 <br/> 编号:0001</br> 魅丽宣言:
姓名:张旭红 <br/> 编号:0002</br> 魅丽宣言:(2 行受影响)*/
--向筱筱橙学习
IF OBJECT_ID('[tb]') IS NOT NULL DROP TABLE [tb]
GO
CREATE TABLE [tb]([name] VARCHAR(50))
INSERT [tb]
SELECT '姓名:张效菁 <br/> 编号:0000</br> 魅丽宣言:' UNION ALL
SELECT '姓名:张旭红 <br/> 编号:0000</br> 魅丽宣言:'
--------------开始查询--------------------------SELECT LEFT([name],CHARINDEX('0000',[name])-1)+RIGHT(10000+row_id,4)+RIGHT([name],LEN([name])-CHARINDEX('0000',[name])-3)
FROM (SELECT *,row_id=ROW_NUMBER() OVER(ORDER BY [name]) FROM [tb])t