可能重复:
SQL ORDER BY total within GROUP BY
(这是关于)在GROUP BY中按总计排序的SQL问题。
对话框ID的两个条目(通过GROUP BY)都得到了1。好的。然后应该按照其中一个条目(在组内)的最新日期进行排序(按日期降序排列)。在这种情况下,具有日期1289158931的是其中一个。
如何做到这一点?
更新:
我想要的结果是:
SQL ORDER BY total within GROUP BY
(这是关于)在GROUP BY中按总计排序的SQL问题。
SELECT *
FROM users_pm_in
WHERE uID = '1'
GROUP BY dialog_id
ORDER BY date DESC
无法正常工作。我想做的是按对话 ID 分组。然后,将所有带有相同对话 ID 的消息按日期排序,并且将所有消息按日期排序。
所以:
id | uID | bID | msg | dialog_id | date
--------------------------------------------------
1 | 1 | 2 | Hello | 1 | 1289158631
2 | 2 | 1 | Hi? | 1 | 1289158691
3 | 1 | 2 | Wazzaa? | 1 | 1289158931
对话框ID的两个条目(通过GROUP BY)都得到了1。好的。然后应该按照其中一个条目(在组内)的最新日期进行排序(按日期降序排列)。在这种情况下,具有日期1289158931的是其中一个。
如何做到这一点?
更新:
我想要的结果是:
while($row = mysql_fetch_array($query)){
echo $row["msg"] // it should echo "Wazzaa?"
echo $row["id"] // it should give me id 3
}
它为每个对话 ID 提供了最后一个,这就是我想要它分组的原因。