关于网友提出的“求一条排名的sql语句”问题疑问,本网通过在网上对“求一条排名的sql语句”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题:求一条排名的sql语句描述:
表user有以下字段:userid varchar(50),score int
需求:查出用户zhangshan的排名及zhangshan前面的10名、后面的10名。
解决方案1:
使用楼上的union来做。。。。。
解决方案2:不建议用一条语句去查询,查询出来之后还要判断才能知道是大于还是小于,因为结果集是同一个:
select * from user where score > x limit 10 union select * from user where score < y limit 10;
可以分成两条查询去做。
解决方案3:很简单的 score > zhangshan的score LIMIT 10 or score< zhangshan的score LIMIT 10