Mysql
 sql >> Database >  >> RDS >> Mysql

Valori separati da virgola con lo stesso numero di righe

Non sono sicuro di Laravel, ma questa è la versione pura di MySQL:

SELECT itemCount, GROUP_CONCAT(username)
FROM
(
   SELECT tblU.user_name, COUNT([DISTINCT] tblUI.item_id) AS itemCount
   FROM users AS tblU 
   INNER JOIN user_items AS tblUI ON tblU.id = tblUI.user_id
   GROUP BY tblU.user_name
) AS uic
GROUP BY itemCount

Nota, DISTINCT è facoltativo, quindi le parentesi quadre. Inoltre, se vuoi che gli utenti siano privi di elementi, puoi fare di JOIN un LEFT JOIN.