日期:2014-05-18 浏览次数:20554 次
select seq=row_number()over(order by getdate()),* from test
------解决方案--------------------
select row_number() over(order by id,shopID ) as seq, id,shopID from [test ] order by id,shopID
------解决方案--------------------
SELECT ROW_NUMBER() OVER (ORDER BY ID) AS SEG ,* FROM TEST ORDER BY ID
------解决方案--------------------
--> 测试数据:[test] if object_id('[test]') is not null drop table [test] create table [test]([id] int,[shopID] int) insert [test] select 44,1 union all select 45,3 union all select 49,4 union all select 50,8 union all select 53,4 select seq=(select COUNT(1) from test b where b.ID<=a.ID), * from test a /* seq id shopID --------------------- 1 44 1 2 45 3 3 49 4 4 50 8 5 53 4 */
------解决方案--------------------
select id=identity(int,1,1), id,shopID into #tb from test select * from #tb
------解决方案--------------------
改变表结构
alter table test add seq int identity(1,1)
------解决方案--------------------
5楼是正解