数据库表 full 字段 ID, url
原始数据表:url中的值全部都是一样的。ID url
1 文件名.html
3 文件名.html
4 文件名.html
6 文件名.html
7 文件名.html
8 文件名.html
要得到的数据表结果ID url
1 1.html
3 3.html
4 4.html
6 6.html
7 7.html
8 8.html意思就是把 url里的 文件名 替换成 当前行的 ID值
原始数据表:url中的值全部都是一样的。ID url
1 文件名.html
3 文件名.html
4 文件名.html
6 文件名.html
7 文件名.html
8 文件名.html
要得到的数据表结果ID url
1 1.html
3 3.html
4 4.html
6 6.html
7 7.html
8 8.html意思就是把 url里的 文件名 替换成 当前行的 ID值
select
ID,
rtrim(ID)+right(url,charindex('.',reverse(url))-1)
from
Tupdate T
set url=rtrim(ID)+right(url,charindex('.',reverse(url))-1)
insert @T select
1, '文件名.html' union all select
3, '文件名.html' union all select
4, '文件名.html' union all select
6, '文件名.html' union all select
7, '文件名.html' union all select
8, '文件名.html' update @T
set url=rtrim(ID)+right(url,charindex('.',reverse(url)))select * from @t
(所影响的行数为 6 行)
(所影响的行数为 6 行)ID url
----------- ----------
1 1.html
3 3.html
4 4.html
6 6.html
7 7.html
8 8.html(所影响的行数为 6 行)
declare @T table(ID int,url nvarchar(10))
insert @T select
1, '文件名.html' union all select
3, '文件名.html' union all select
4, '文件名.html' union all select
6, '文件名.html' union all select
7, '文件名.html' union all select
8, '文件名.html' select ID,rtrim(ID)+right(url,charindex('.',reverse(url))) as 显示
from @t
declare @T table(ID int,url nvarchar(10))
insert @T select
1, '文件名.html' union all select
3, '文件名.html' union all select
4, '文件名.html' union all select
6, '文件名.html' union all select
7, '文件名.html' union all select
8, '文件名.html' update @T
set url=rtrim(ID)+'.html'select * from @T(所影响的行数为 6 行)
(所影响的行数为 6 行)ID url
----------- ----------
1 1.html
3 3.html
4 4.html
6 6.html
7 7.html
8 8.html(所影响的行数为 6 行)
update full set url=replace(url,'文件名',id)