2011-01-13 30 views
1

我有一個帶日期和時間列的數據庫,用戶將輸入評論。我希望查詢能夠檢索最新的10篇文章。SQL如何編寫查詢來檢索最新的帖子

Select comment from Comment where username = ? and date ... 

我不確定如何比較以得到最新數據?任何建議

+1

什麼是您正在使用的數據庫? – Chandu 2011-01-13 15:21:36

+0

MySQL謝謝... – user236501 2011-01-13 15:22:40

回答

2

注意我的答案與以前的答案差不多,只是區別在訂購部分。 (根據您對@ m.edmondson的評論) 以下將根據您的需要訂購時間和日期。

Select comment 
from Comment 
order by Date desc ,time desc LIMIT 10 

另外,爲什麼你沒有主鍵?

4

SELECT comment FROM Comment ORDER BY date DESC LIMIT 10

這將日期順序所有意見,並在最近的一次首發,並獲得近10項。 (其中「LIMIT」是mySQL,您可能需要根據您的服務器使用「SELECT TOP 10」)

從您的描述(「獲取最新的10篇文章」)來看,不需要在查詢中包含WHERE username ?。如果你發佈你的表結構,這將有所幫助。

1
select top 10 comment 
from Comment 
order by date desc 
+0

我得到日期和時間兩列如何寫兩列desc? – user236501 2011-01-13 15:22:14

0

「限制查詢到10行」問題的簡單解決方案非常針對數據庫。所以,到目前爲止提出的答案將使您與特定的DBMS聯繫在一起。如果您希望使用非通用DBMS特定方式來執行此操作,則需要聲明您正在使用的數據庫類型。

更新:我看到你已經添加了一條評論來指定你使用的DB類型是MySQL。在這種情況下,添加一個LIMIT clause將您的結果限制爲10行(LIMIT 10),並按日期降序排列(ORDER BY date DESC)以解決您的問題。