mysql返回记录的ROWNUM(转)

SQL技巧:利用变量实现多条SQL语句整合
本文介绍如何使用SQL变量实现多条SQL语句的整合,通过实例演示了如何在数据库查询中使用变量作为计数器,并整合多条SQL语句以解决特定需求。

 

 

set @rownum = 0;

select (@rownum := @rownum + 1) as rownum, name, scores from user order by scores;

利用一个变量作为计数器,就把这个rownum给模拟出来了。再对这个查询结果进行搜索就可以得到想要的了:

select rownum, name, scores from (select (@rownum := @rownum + 1) as rownum, name, scores from user order by scores) where name = ‘张三’;

这样貌似可以了。但是我的问题还没完:我们项目里的数据库类无法实现同时执行两条SQL语句。开始我试着改那个类,后来我换了个想法:能不能把这两条SQL语句给整合成一条呢?

在overflow上找到了这个问题的解答:

select rownum, name, scores from (select (@rownum := @rownum + 1) as rownum, name, scores from user u, (select @rownum := 0) r order by scores) where name = ‘张三’;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值