我有上面的表格,我想运行一个MySQL查询来对noteId
,dataId
和type
具有相同值的行进行分组。
$query = mysqli_query($con, "SELECT * FROM table WHERE userTo = '1' GROUP BY noteId, dataId, type ORDER BY id DESC");
现在我相信上面的这个查询应该进行分组并返回每个组中的最后一行。但相反,我得到了每组中的第一行。
例如,行13
,14
和16
组合在一起。因此,我希望通过执行16
返回行ORDER BY id DESC
,而是获取行13
。
请有人帮助我吗?
答案 0 :(得分:2)
你可以试试这个
SELECT * FROM (SELECT * FROM table ORDER BY id DESC) t
WHERE t.userTo = '1' GROUP BY t.noteId, t.dataId, t.type