对一对多连接进行排序

时间:2011-10-05 19:22:37

标签: mysql

说我有两张桌子。 相册图片相册表中的记录与图片表中的记录具有一对多关系。

我需要能够获得 x 数量的相册与每张相册相关的图片数量,以便我可以按照图片数量排序。

最好的方法是什么?可以使用单个查询完成,还是需要运行多个查询?

1 个答案:

答案 0 :(得分:2)

您应该能够使用聚合函数/ group by子句来完成此操作,例如:

SELECT a.name, COUNT(p.id)
FROM Albums a LEFT JOIN Pictures p on a.id = p.album_id
GROUP BY a.name
ORDER BY COUNT(p.id) DESC
LIMIT 10