我有多个表的这个查询,我得到了以下结果。然后我想按 t.id 分组。我知道我可以简单地使用 group by t.id 但如何选择 t.id 的最新行,即 url tw5.jpg 和 created_time 10000004
SELECT p.url,t.name,t.num_photo,t.id
FROM photos AS p
LEFT JOIN tag_maps AS tm ON p.id = tm.photo_id
LEFT JOIN tags AS t ON t.id = tm.tag_id
url created_time name num_photo id
assets/img/tags/tw1.jpg 1000001 my house 1 1
assets/img/tags/tw2.jpg 1000002 dog 1 2
assets/img/tags/tw3.jpg 1000003 taiwan 2 3
assets/img/tags/tw5.jpg 1000004 taiwan 2 3
这是我在使用 group by t.id 时得到的
url created_time name num_photo id
assets/img/tags/tw1.jpg 1000001 my house 1 1
assets/img/tags/tw2.jpg 1000002 dog 1 2
assets/img/tags/tw3.jpg 1000003 taiwan 2 3
这就是我想要的
url created_time name num_photo id
assets/img/tags/tw1.jpg 1000001 my house 1 1
assets/img/tags/tw2.jpg 1000002 dog 1 2
assets/img/tags/tw5.jpg 1000004 taiwan 2 3
已编辑
照片表
id url created_time
1 assets/img/tags/tw1.jpg 1000001
2 assets/img/tags/tw2.jpg 1000002
3 assets/img/tags/tw3.jpg 1000003
4 assets/img/tags/tw5.jpg 1000004
标签表
id name num_photo
1 my house 1
2 dog 1
3 taiwan 2
标记地图
id tag_id photo_id
1 1 1
2 2 2
3 3 3
4 3 4