2014-03-25 109 views
2

最後兩行我有得到照片上的所有註釋的SQL語句,它是有序的,因此第一個評論是在頁面的頂部:MySQL的 - 選擇查詢

SELECT * FROM comments WHERE post='$id' AND status='1' ORDER BY time 

但我想要創建一個只顯示3條最新評論的預覽。

SELECT * FROM comments WHERE post='$id' AND status='1' ORDER BY time DESC LIMIT 3 

但我希望這3條評論與原評論的順序相同,所以最早的評論是最高評論。上面的查詢將最早的評論放在最底部,最新的評論放在最上面。如何僅通過獲得最近的三條評論來維護相同的訂單?

+4

http://stackoverflow.com/questions/12125904/select-last-n-rows-from-mysql –

回答

3

嘗試此查詢:

SELECT * FROM (
    SELECT * FROM comments WHERE post='$id' AND status='1' ORDER BY time DESC LIMIT 3 
) sub 
ORDER BY time ASC 

MySQL Subquery Syntax