【发布时间】:2012-01-11 06:33:37
【问题描述】:
我想从用户那里选择最新的帖子,我正在寻找最有效的方法来做到这一点。
目前这会选择第一个帖子,而不是最后一个:
$query = mysql_query("
SELECT *
FROM posts
WHERE toID=fromID
GROUP BY fromID
ORDER BY date DESC LIMIT 3");
表结构:
表格:帖子
id ToID FromID Post State Date
1 1 1 Hey 0 1325993600
2 1 6 okay yeah 0 1325993615
3 1 2 again 0 1325994600
4 6 6 yeah2 0 1325995615
所以从上面的例子中它会返回 id: 1 和 4。
toID=fromID 只是为了获取作为状态消息的帖子,这意味着用户在自己的页面上发布了一些东西,而不是其他人。
我想从最近更新状态的 3 位用户那里获取最新状态。
【问题讨论】:
-
toID=fromID有什么用?它会影响您的结果集吗? -
您应该为最新帖子使用时间戳。
-
我确实有时间戳,但 id 的作用与时间戳相同。 (它是自动增量)
-
您的表格中是否有任何日期或时间戳字段。 toID 和 fromID 是什么?你能提供表结构吗
-
我已经更新了答案