0

我有一个 mssql 数据库,我正在尝试更新一个包含这样数据的数据库字段..

1111-2222-3333-4444

我想浏览所有记录并更改前 3 组数字并保留最后一组。

因此,在更新之后,它们都将是0000-0000-0000-4444,而4444是以前的。

我怎样才能做到这一点?

4

2 回答 2

3

如果所有行的格式完全相同,并且您希望将每行中的前三组字符更改为完全相同的值,那么这样的事情会起作用:

update tblToUpdate
set columnToUpdate = '0000-0000-0000-' + right(columnToUpdate , 4)

在做任何太疯狂的事情之前一定要备份那张桌子!

于 2013-02-18T19:50:35.247 回答
0
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
于 2013-02-18T19:51:08.643 回答