sql >> Database >  >> RDS >> Mysql

Query met group_concat retourneert slechts één rij

Omdat je de GROUP BY . niet hebt gebruikt clausule in uw zoekopdracht. Bij gebruik van aggregatiefuncties zoals GROUP_CONCAT u moet de database vertellen met welke kolom u uw gegevens wilt combineren.

Momenteel groepeert uw zoekopdracht alle records en geeft 1 record in de uitvoer.

Als u GROUP BY users.userid . toevoegt in de query worden de records gegroepeerd op unieke gebruikers-ID's. Ik heb je viool geüpdatet en het geeft nu 2 records:http://www.sqlfiddle. com/#!2/867f6/18

Let op:In standaard SQL-query's moeten de kolommen die in de GROUP BY-clausule worden vermeld, overeenkomen met de kolom in de SELECT-clausule (behalve de aggregatiefuncties).



  1. Op MySQL opgeslagen procedures

  2. Hoe de sortering van een database in MySQL te tonen

  3. vind het N-de grootste element in SQL

  4. Opgeslagen Oracle-procedure aanroepen vanuit C#?