Es macht seltsame Dinge, weil es ein Kreuzprodukt bestimmter Zeilen gibt. Sie können den DISTINCT
verwenden Schlüsselwort, um nur eindeutige Telefonnummern zu erhalten:
GROUP_CONCAT(DISTINCT phones.phone_number) AS phone_numbers,
Prüfen Sie die Dokumentation
. Alternativ können Sie die Telefonnummern in einer anderen Abfrage abrufen, bei der Sie nur die Telefonnummern mit einer Bedingung wie WHERE phones.user_id IN (x, x, x, ...)
auswählen würden (x sind IDs, die von der ersten Abfrage zurückgegeben werden).