Il fait des choses bizarres, car il y a un produit croisé de certaines lignes. Vous pouvez utiliser le DISTINCT
mot-clé pour obtenir uniquement des numéros de téléphone uniques :
GROUP_CONCAT(DISTINCT phones.phone_number) AS phone_numbers,
Consultez la documentation
. Alternativement, vous pouvez obtenir les numéros de téléphone dans une autre requête où vous sélectionneriez uniquement les numéros de téléphone avec une condition telle que WHERE phones.user_id IN (x, x, x, ...)
(x sont les identifiants renvoyés par la première requête).