首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

批改序号

2013-06-19 
修改序号表A将下列值abc1ff gg4bb cc7aa hh修改为abc1ff gg2bb cc3aa hh[解决办法]你这个还不如直接新增加

修改序号
表A
将下列值
a  b  c
1  ff gg
4  bb cc
7  aa hh

修改为
a  b  c
1  ff gg
2  bb cc
3  aa hh


[解决办法]
你这个还不如直接新增加一个字段是identity 的,这样会自动生成新的顺序
[解决办法]


declare @表A table (a int,b varchar(2),c varchar(2))
insert into @表A
select 1,'ff','gg' union all
select 4,'bb','cc' union all
select 7,'aa','hh'

;with maco as
(
select row_number() over (order by a) as id,* from @表A
)
select * from maco
/*
id                   a           b    c
-------------------- ----------- ---- ----
1                    1           ff   gg
2                    4           bb   cc
3                    7           aa   hh
*/


[解决办法]
如果要更新的话:

declare @表A table (a int,b varchar(2),c varchar(2))
insert into @表A
select 1,'ff','gg' union all
select 4,'bb','cc' union all
select 7,'aa','hh'

;with maco as
(
select row_number() over (order by a) as id,* from @表A
)
update maco set a=id
select * from @表A
/*
a           b    c
----------- ---- ----
1           ff   gg
2           bb   cc
3           aa   hh
*/

热点排行