日期:2014-05-18  浏览次数:20535 次

如何对一批记录,加上顺序递增的行号呢?
如何对一批记录,加上顺序递增的行号呢?
比如已经有个一批记录,是一条单据的若干条记录,我想加上顺序递增的行号。


------解决方案--------------------
如果存在并比较大小的行.ID

--sql 2000用子查询
select t.* , px = (select count(1) from tb where id < t.id) + 1 from tb t

--sql 2005用row_number
select t.* , px = row_number() over(order by id) from tb t
------解决方案--------------------
sql2005

row_number
------解决方案--------------------
row_number()over(..)
--or
插入到一个临时表的,临时表自增列来。