Mysql 查询字段在第几行 20
现在有一个表,里面有ID(ID不连贯)、Name、Score,Userid四个字段,请问我想查找某个ID,在整张表的第几行,请问怎么查?还有就是可能数据有很多页,我怎么查...
现在有一个表,里面 有ID(ID 不连贯)、Name、Score,Userid 四个字段,请问我想查找 某个ID,在整张表的第几行,请问怎么查? 还有就是 可能数据有很多页,我怎么查询在第几行,不要第几页。
展开
展开全部
mysql本身是没有行号的。要想得到查询语句返回的列中包含一列表示该行记录在整个结果集中的行号可以通过自定义set一个变量,然后每条记录+1的方式,返回这个变量的值。
举例:
表名为:s_ave
表的内容:
Ave Avename
1 d
3 e
4 a
6 b
5 e
我们要查询 ave=6 的行号:
set @mytemp = 0;
select * from (
SELECT (@mytemp:=@mytemp+1) as newid,Ave,Avename FROM s_ave
) AS A
WHERE A.Ave=6
自己试一下吧,这里 mytemp 的值就是行号
转自:http://zhidao.baidu.com/link?url=s7xymIjJkwxR1AwTPwJRrgcZN6NX3A78sC4o0QAbOtNNYIfE94Y0ITUyo2yHU6DgnU0aXrwCyF99CST8qhhbiq
举例:
表名为:s_ave
表的内容:
Ave Avename
1 d
3 e
4 a
6 b
5 e
我们要查询 ave=6 的行号:
set @mytemp = 0;
select * from (
SELECT (@mytemp:=@mytemp+1) as newid,Ave,Avename FROM s_ave
) AS A
WHERE A.Ave=6
自己试一下吧,这里 mytemp 的值就是行号
转自:http://zhidao.baidu.com/link?url=s7xymIjJkwxR1AwTPwJRrgcZN6NX3A78sC4o0QAbOtNNYIfE94Y0ITUyo2yHU6DgnU0aXrwCyF99CST8qhhbiq
追问
[Err] 1064 - You have an error in your SQL syntax; 报这个错误
展开全部
---这里的rownum就是行号。tablename1是你的表名
select * from (
select
tablename_tmp.*,
@rownum:=@rownum+1 rownum
from (
select * from tablename1 order by ID
)
tablename_tmp ,
(select @rownum :=0) a
) a
where a.ID=你想找的id
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询