首页 > 数据库 > mysql教程 > MySQL中如何在选出的结果集中打印某条记录的位置

MySQL中如何在选出的结果集中打印某条记录的位置

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
发布: 2016-06-07 16:57:07
原创
1038 人浏览过

在MySQL中,有时候我们要选出N条记录,希望在结果中每条记录中加上一列标记该记录是第几条。 这个问题在oracle中,用rownum就可以

在MySQL中,有时候我们要选出N条记录,希望在结果中每条记录中加上一列标记该记录是第几条。
这个问题在Oracle中,用rownum就可以简单的实现,,但是在MySQL中,怎么去实现呢?下面给大家举一个例子:
select t.page,t.pv,@rn:=if(1=1,@rn+1,@rn) as rn
from
(select
page,
pv 
from  
module_page_statis
where
statisDay='2010-05-31' and module='new_info' order by 2 desc  limit 10) t, (select @rn:=0) t2
order by t.pv desc


这里略微解释下:
1,(select @rn:=0) 仅仅起到初始化的作用。
2,@rn:=if(1=1,@rn+1,@rn) 这一句是每选出一条记录出来,执行一次。当然这里面还可以填充更复杂的逻辑。

linux

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
mysql 升级后无法重启mysql服务的问题
来自于 1970-01-01 08:00:00
0
0
0
linux安装mysql报错
来自于 1970-01-01 08:00:00
0
0
0
MySQL停止进程
来自于 1970-01-01 08:00:00
0
0
0
phpstudy不能启动mysql?
来自于 1970-01-01 08:00:00
0
0
0
环境中mysql
来自于 1970-01-01 08:00:00
0
0
0
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板