注册 登录
编程论坛 SQL Server论坛

如何实现执行 sql server 语句在数据库填入序列号的问题

lzyhello 发布于 2012-12-22 10:11, 753 次点击
如何实现执行 sql  server 语句实现在数据库填入序列号的问题,请教高手,问题描述如下:

数据表名:person  ,记录数量不定(如图1所示),字段No(序号)初始值为:0 ,通过在 SQL查询分析器写语句并执行,得到图2所示的结果,请教高手如何写语句实现,谢谢!

图1(初始序列号为0):

只有本站会员才能查看附件,请 登录


图2(通过执行sql语句自动填入序列号):

只有本站会员才能查看附件,请 登录
3 回复
#2
gaoshuli122012-12-24 16:10
select row_number() OVER(ORDER BY name),*
from person

#3
lzyhello2013-01-05 12:49
谢谢!按照你的执行之后,当初显示是哪样的,但再执行 select * from person 时,显示的还是没有改变呀。我要求是执行之后,把初始值“0”全部改写为序列号并保存在表中!
#4
mpi2013-01-05 13:24
UPDATE [T] SET [No] = i FROM(SELECT *, i = ROW_NUMBER() OVER(ORDER BY [name]) FROM [person]) AS [T]
1