有没有一种方法可以在一个查询中按照一个表的列进行分组,但按另一个表的列进行限制。类似于:
SELECT items.*, subitems.*
FROM items
LEFT OUTER JOIN subitems ON subitems.subitem_itemId = items.item_id
GROUP BY subitem.subitem_id
LIMIT 10
...但是LIMIT 10只应用于项目记录的数量,而不是实际行数。因此我可以得到10个项目,但是无限制的子项目,因此可能会有超过10个实际行(如果子级小于或等于父级,则不会)。
然后我可以在php中循环这些,并设置父/子关系。还有更好的方法吗?