SQL如何编写查询来检索最新的帖子

时间:2011-01-13 15:17:58

标签: mysql

我有一个包含日期和时间列的数据库,用户将输入注释。我想要一个查询能够检索最新的10个帖子。

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

我不确定如何比较以获取最新数据?任何建议

4 个答案:

答案 0 :(得分:4)

SELECT comment FROM Comment ORDER BY date DESC LIMIT 10

这将按日期排序所有评论,从最近的评论开始,并获得最后10个条目。 (其中“LIMIT”是mySQL,您可能需要使用“SELECT TOP 10”,具体取决于您的服务器)

根据您的说明(“获取最新的10篇帖子”)判断,您无需在查询中加入WHERE username ?。如果您发布了表结构,那将会有所帮助。

答案 1 :(得分:2)

请注意,我的答案或多或少与之前的答案类似,唯一不同的是订购部分。 (根据你对@ m.edmondson的评论) 以下内容将根据您的需要订购时间和日期。

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

另外,为什么你没有主键呢?

答案 2 :(得分:1)

select top 10 comment
from Comment
order by date desc

答案 3 :(得分:0)

“限制查询到十行”问题的简单解决方案是特定于数据库的。因此,到目前为止提供的答案将使您与特定的DBMS联系起来。如果您需要非通用的DBMS特定方法,则需要说明您正在使用的DB类型。

更新:我看到你添加了一条注释,指明你使用的数据库类型是MySQL。在这种情况下,添加LIMIT clause以将结果限制为十行(LIMIT 10),并按日期降序(ORDER BY date DESC)到您的查询中将解决您的问题。