7

无论如何可以使用Order By id asc获取最新的 3 条评论吗?

这是我的表结构:表名:评论

在此处输入图像描述

现在我正在使用这个查询:

SELECT *
FROM `comments`
ORDER BY id ASC
LIMIT 0 , 3

但它返回结果,这是显而易见的:

在此处输入图像描述

但我想显示最新的 3 条记录,但按升序排列。 像这样:

在此处输入图像描述

4

5 回答 5

8

使用以下代码:

SELECT * 
   FROM (SELECT *
      FROM `comments` ORDER BY id DESC LIMIT 0 , 3) t
ORDER BY id ASC;

首先你按 id 降序排序,得到 3 个结果,然后对这 3 个结果对 id 进行升序排序。

于 2013-09-30T08:52:50.623 回答
7
(SELECT * FROM `comments` ORDER BY id DESC limit 3 ) ORDER BY id ASC

只需使用第二个 ORDER BY 重新排序 DESC 查询 :)

于 2013-09-30T08:57:43.833 回答
0
SELECT * FROM (
  SELECT * 
  FROM comments   
  ORDER BY id DESC
  LIMIT 3
) t ORDER by id ASC
于 2013-09-30T08:55:37.490 回答
0

尝试这个

select * from (select * from `comments` ORDER BY id desc limit 0,3) t
order by id asc;
于 2013-09-30T09:08:28.680 回答
-3

这应该这样做:

SELECT *
FROM `comments`
ORDER BY id DESC
LIMIT 0 , 3
于 2013-09-30T08:52:17.220 回答