Je cherche à renvoyer une liste d'utilisateurs à partir d'une base de données. Il y a des centaines d'utilisateurs dans la base de données. Chaque utilisateur a son propre id_utilisateur unique. Toutes les valeurs que j'essaye de renvoyer résident dans la même colonne (meta_value).
La structure de la base de données est la suivante:
id | user_id | meta_key | meta_value
les exemples de données sont les suivants:
1 | 3434 | prénom | Brandon 2 | 3434 | nom de famille | Johnson 3 | 3434 | street_add | 123 principal 4 | 3434 | ville | plage de l'océan 5 | 3434 | état | Texas
J'essaie de renvoyer le prénom, le nom, street_add, la ville et l'état dans une instruction sql.
J'aimerais que la sortie ressemble à ceci:
Brandon, Johnson, 123 Main, Ocean Beach, Texas
Utilisez simplement GROUP_CONCAT avec une condition WHERE
SELECT user_id,GROUP_CONCAT(meta_value ORDER BY id)
FROM t
WHERE meta_key IN('first_name','last_name','street_add','city','state')
GROUP BY user_id