mysql order by desc num 以后,我想查出id=1的记录在第几行怎么办?
有人给我一个解决方式:
set @rown=0;
select * from( select (@rown:=@rown+1) as rownum, num,id from tablename order by desc num) as A where id=1num 与id 是表里的字段 tablename为表名这是那个人给的方法,但是在mysql5.5里查出来的行号为null。查不出。请问怎么解决?或者有什么其他的方法。(查出来的结果放到另一个表里的这个方法就不用说了哈)
有人给我一个解决方式:
set @rown=0;
select * from( select (@rown:=@rown+1) as rownum, num,id from tablename order by desc num) as A where id=1num 与id 是表里的字段 tablename为表名这是那个人给的方法,但是在mysql5.5里查出来的行号为null。查不出。请问怎么解决?或者有什么其他的方法。(查出来的结果放到另一个表里的这个方法就不用说了哈)
FROM tb a
ORDER BY num
select 字段 from a,b where a.字段*=b.字段
from tablename
where num>=(select num from tablename where id=1);
这个语句好使在我机上:SELECT @rownum:=@rownum+1 rownum, sjfat_stu_cource.*
FROM (SELECT @rownum:=0) r, sjfat_stu_cource;
sjfat_stu_cource为表名。
帮帮小弟
我用的这种方法
http://blog.csdn.net/ACMAIN_CHM/archive/2009/04/20/4095531.aspx
SELECT @rownum:=@rownum+1 rownum, a.*FROM (SELECT @rownum:=0) r, a order by id desc;
但我想按成绩排名以后查id=1的行号。也就是where id=1,不知道写在什么地方
用下面这个语句。
SELECT @rownum:=@rownum+1 rownum, sjfat_stu_cource.*
FROM (SELECT @rownum:=0) r, sjfat_stu_cource) as t
where sid=2
order by score desc;
SELECT @rownum:=@rownum+1 rownum, sjfat_stu_cource.*
FROM (SELECT @rownum:=0) r, sjfat_stu_cource) as t as t 不能少,要不编译不能通过加条件:
where sid=2
order by score desc;
query本没有路,只要你觉得正确,就ok.
这个网站:http://sql.1keydata.com/cn/sql-where.php