我正在尝试为独特user_id获取最新创建的日期时间。我有下面的查询,但它似乎并没有工作....它没有得到最新创建的时间。MySQL最新唯一用户聊天工作不正常
SELECT * FROM `chats`
WHERE receiver_id = 1
GROUP BY user_id
ORDER BY created DESC
是否有原因?
UPDATE:
其实我发现我的答案我自己。请看下面。我必须使用INNER JOIN来嵌套搜索和过滤结果表,然后使用该结果的where子句,然后在该表上留下加入以获得我需要的数据!
SELECT c.*, users.username
FROM chats c
INNER JOIN(
SELECT MAX(created) AS Date, user_id, receiver_id, chat, type, id
FROM chats
WHERE receiver_id = 1
GROUP BY user_id) cc ON cc.Date = c.created AND cc.user_id = c.user_id
LEFT JOIN users ON users.id = c.user_id
WHERE c.receiver_id = 1
您可能想在此处发布您的表格结构。 – 2012-01-10 00:24:20
你能给我们提供关于你的问题的更多信息吗?例如,聊天表的结构如何,以及该表中的一些示例数据。 – Diego 2012-01-10 00:30:51