SQL子查询和查询组中的逆序

SQL子查询和查询组中的逆序,sql,subquery,Sql,Subquery,在编写一个聊天程序时,我想展示最后5个示例记录的顺序,以便在底部描述新的记录并继续其他记录 我用这句话,但没用: Show.Open("SELECT q.* FROM (SELECT * FROM database ORDER BY id DESC) AS q ORDER BY q.id ASC",Cn,1); 仅选择5条记录,使用i++ 或者使用单个SELECT*FROM database ORDER BY id DESC,但从组的第一个到最后一个加载记录。如果要限制行数,请在子查询中执行此

在编写一个聊天程序时,我想展示最后5个示例记录的顺序,以便在底部描述新的记录并继续其他记录

我用这句话,但没用:

Show.Open("SELECT q.* FROM (SELECT * FROM database ORDER BY id DESC) AS q ORDER BY q.id ASC",Cn,1);
仅选择5条记录,使用i++


或者使用单个SELECT*FROM database ORDER BY id DESC,但从组的第一个到最后一个加载记录。

如果要限制行数,请在子查询中执行此操作,并将其与ORDER BY组合

否则子查询的orderby就毫无意义了

ANSI SQL:

SELECT *
FROM (SELECT * FROM database ORDER BY id DESC FETCH FIRST 5 ROWS ONLY)
ORDER BY id ASC

下面的查询可能会解决此问题:


选择*从数据库选择前5个*从数据库按id排序描述按id排序ASC

您正在使用哪个数据库管理系统?博士后?神谕