Sql 使用reg ex或更新
我有一个mssql数据库,我正在尝试更新一个包含如下数据的数据库字段 1111-2222-3333-4444 我想查看所有记录,更改前3组数字,保留最后一组 因此,在更新之后,它们都是0000-0000-0000-4444,而4444是以前的Sql 使用reg ex或更新,sql,sql-server,Sql,Sql Server,我有一个mssql数据库,我正在尝试更新一个包含如下数据的数据库字段 1111-2222-3333-4444 我想查看所有记录,更改前3组数字,保留最后一组 因此,在更新之后,它们都是0000-0000-0000-4444,而4444是以前的 如何执行此操作?如果所有行的格式都完全相同,并且您希望将每行的前三组字符更改为完全相同的值,则类似的操作将起作用: update tblToUpdate set columnToUpdate = '0000-0000-0000-' + right(colu
如何执行此操作?如果所有行的格式都完全相同,并且您希望将每行的前三组字符更改为完全相同的值,则类似的操作将起作用:
update tblToUpdate
set columnToUpdate = '0000-0000-0000-' + right(columnToUpdate , 4)
在做任何疯狂的事情之前,一定要备份一下那张桌子 如果所有行的格式都完全相同,并且您希望将每行的前三组字符更改为完全相同的值,那么类似的操作将起作用:
update tblToUpdate
set columnToUpdate = '0000-0000-0000-' + right(columnToUpdate , 4)
create table tmp (a varchar(32))
insert into tmp values ('1111-2222-3333-4444')
GO
select '0000-0000-0000-' + substring(a, 16, 4)
from tmp
在做任何疯狂的事情之前,一定要备份一下那张桌子 最后总是有4个数字吗?不,那只显示4组4个数字。最后总是有4个数字吗?不,那只显示4组4个数字
create table tmp (a varchar(32))
insert into tmp values ('1111-2222-3333-4444')
GO
select '0000-0000-0000-' + substring(a, 16, 4)
from tmp