我希望从数据库中返回用户列表。数据库中有数百个用户。每个用户都有自己唯一的 user_id。我尝试返回的所有值都位于同一列 (meta_value) 中。
数据库结构如下:
id | user_id | meta_key | meta_value
Run Code Online (Sandbox Code Playgroud)
样本数据如下:
1 | 3434 | 名字| 布兰登 2 | 3434 | 姓氏 | 约翰逊 3 | 3434 | street_add | 123主 4 | 3434 | 城市 | 海洋海滩 5 | 3434 | 状态 | 德克萨斯州
我试图在一个 sql 语句中返回名字、姓氏、street_add、城市和州。
我希望输出看起来像:
Brandon, Johnson, 123 Main, Ocean Beach, Texas
Run Code Online (Sandbox Code Playgroud)
小智 9
只需将 GROUP_CONCAT 与 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
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
81146 次 |
最近记录: |