SQL SERVER 2000/2005/2008 一句话完成分组后加序号--【叶子】

  1. --测试数据  
  2. declare @T table (id int identity,col varchar(5))  
  3. insert into @T  
  4. select 'AAA' union all  
  5. select 'AAA' union all  
  6. select 'BBB' union all  
  7. select 'CCC' union all  
  8. select 'CCC'  
  9.   
  10. --SQL SERVER 2005/2008  
  11. select row_number() over (partition by col order by id) as num,col from @T  
  12. /*  
  13. num                  col  
  14. -------------------- -----  
  15. 1                    AAA  
  16. 2                    AAA  
  17. 1                    BBB  
  18. 1                    CCC  
  19. 2                    CCC  
  20. */  
  21.   
  22. --SQL SERVER 2000  
  23. select (select count(1) from @T where col=t.col and id<=t.id) as num ,col from @T t  
  24. /*  
  25. num         col  
  26. ----------- -----  
  27. 1           AAA  
  28. 2           AAA  
  29. 1           BBB  
  30. 1           CCC  
  31. 2           CCC  
  32. */  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值