sql添加序号

sql添加序号

--sql 2000
select 序号 = (select count(1) from tb where 学号 < t.学号) + 1,学号 ,姓名 from tb t
--sql 2005
select 序号 = row_number() over(order by 学号),学号 ,姓名 from tb
--oracle
select row_number() over(order by 学号) 序号,学号 ,姓名 from tb
--postsql
SELECT ROW_NUMBER () OVER ( ORDER BY A0 DESC,B0 DESC,C0 DESC ) AS rid ,* FROM t_road WHERE A0 = 'X' ORDER BY A0, B0,C0 ;

1)这里特意说明:sql 2000的方式(下一行的序号,在上一行基础上+1),因为刚好遇到,必须用这种方式的情况:需要给每行添加行号

情况:由于后台的分页接口,会将查询的sql截断(会根据order by截断),因此不能使用通过order by添加序号的方式(蛋疼的操作)。

后果:我们的sql会被截断,因为他接口要将order by排除后,将sql求总和。

 

参考:sql查询,给查询结果添加上序号

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值