gpt4 book ai didi

mysql - 在mysql上将多行合并为一行多列

转载 作者:IT老高 更新时间:2023-10-29 00:16:15 24 4
gpt4 key购买 nike

我在 MYSQL 中工作,需要提取用户数据以将其拉入 View 。我将在电子邮件客户端中使用数据,因此我无法在应用层执行此操作。

问题在于用户的每个数据字段都包含在单独的行中(这是 Wordpress 设置数据结构的方式)。

例如,wp_usermeta 为每个用户提供多行数据,如下所示:

user_id   meta_key       meta_data
2 first_name Jane
2 last_name Austin
2 email jane@me.com
3 first_name Jack
3 last_name Palmer
3 email jack@me.com

我需要将数据组合成一行,单独的字段,如下所示:

user_id  first_name  last_name  email
2 Jane Austin jane@email.com
3 Paul Parker jack@email.com

我四处搜索,在任何地方都找不到这个确切的问题(我发现了很多串联,但这不是我需要的)。

最佳答案

如果这些是您唯一关心的列,那么这对您有用:

SELECT um.user_id
, fn.meta_data AS first_name
, ln.meta_data AS last_name
, e.meta_data AS email
FROM wp_userMeta AS um
LEFT JOIN wp_user_Meta AS fn ON um.user_id = fn.user_id
AND fn.meta_key = 'first_name'
LEFT JOIN wp_user_Meta AS ln ON um.user_id = ln.user_id
AND ln.meta_key = 'last_name'
LEFT JOIN wp_user_Meta AS e ON um.user_id = e.user_id
AND e.meta_key = 'email'

关于mysql - 在mysql上将多行合并为一行多列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8283541/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com