Order By id ascで最新の3つのコメントを取得する方法はありますか?
これが私のテーブル構造です:テーブル名: コメント
今、私はこのクエリを使用しています:
SELECT *
FROM `comments`
ORDER BY id ASC
LIMIT 0 , 3
しかし、それは明らかな結果を返します:
しかし、最新の 3 つのレコードを表示したいのですが、昇順で表示します。 このような:
以下のコードを使用します。
SELECT *
FROM (SELECT *
FROM `comments` ORDER BY id DESC LIMIT 0 , 3) t
ORDER BY id ASC;
最初に ID の降順で並べ替えて 3 つの結果を取得し、次にこれらの 3 つの結果に対して ID の昇順で並べ替えます。
(SELECT * FROM `comments` ORDER BY id DESC limit 3 ) ORDER BY id ASC
2番目の ORDER BY でDESCクエリを並べ替えるだけです:)
SELECT * FROM (
SELECT *
FROM comments
ORDER BY id DESC
LIMIT 3
) t ORDER by id ASC
これはそれを行う必要があります:
SELECT *
FROM `comments`
ORDER BY id DESC
LIMIT 0 , 3