sql语句如何在数据库中按照降序读出后5条记录

如题所述

sql语句实现降序取出后五条记录的方法:
1、sql server中的实现
select top 5 * from 表 where
id not in (select top 5 id from 表)
2、oracle中的实现:

SELECT *
FROM (SELECT a.*, ROWNUM rn
FROM torderdetail a)
WHERE rn >= 5 AND rn <= 10

这条语句即是输出Oracle查询第5到第10条纪录,这里之所以用rownum rn,是把rownum转成实例,因为rownum本身只能用 <=的比较方式,只有转成实列,这样就可做 >=的比较了。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-09-05
把排序字段 ID 改为你的 字段名(有两处),表1 改为你的 表名

SELECT *
FROM (SELECT TOP 5 *
FROM 表1
ORDER BY ID)
ORDER BY ID DESC
第2个回答  推荐于2018-03-08
select * from 表名 where id not in(select ((select count(*) form 表名)-5) id from 表名 order by 降序字段 desc)本回答被提问者和网友采纳
第3个回答  2010-09-05
比如数据表table_a,按字段field_b降序

mysql:
select * from table_a order by field_b desc limit 5;

mssql:
select top 5 * from table_a order by field_b desc;
相似回答