Mysql SQL-转置一列并从径向列-wordpress表wp_usermeta中获取值
我不太擅长SQL和Wordpress。我在wordpress上制作了一些表单,当数据被添加时,所有的值都被插入到这个wordpress表中 该表的名称为wp_usermeta,并以这种方式组成 umeta_id-用户_id-元键-元值 现在,我已使用此sql代码将该表复制到一个新表中 创建表Mysql SQL-转置一列并从径向列-wordpress表wp_usermeta中获取值,mysql,sql,wordpress,pivot,aggregate-functions,Mysql,Sql,Wordpress,Pivot,Aggregate Functions,我不太擅长SQL和Wordpress。我在wordpress上制作了一些表单,当数据被添加时,所有的值都被插入到这个wordpress表中 该表的名称为wp_usermeta,并以这种方式组成 umeta_id-用户_id-元键-元值 现在,我已使用此sql代码将该表复制到一个新表中 创建表elaborazione_Meta_User_dataLIKEwp_usermeta; 插入到elaborazione\u Meta\u User\u数据中SELECT*FROMwp\u usermeta
elaborazione_Meta_User_data
LIKEwp_usermeta
;
插入到elaborazione\u Meta\u User\u数据中
SELECT*FROMwp\u usermeta
通过这种方式,我可以在不丢失数据的情况下进行任何“修改”
我的目标是从这种情况开始
到了这个地步
我知道我必须转换一些东西,但我现在知道怎么做了
其他有助于解决此问题的信息:
您可以使用mysql的
GROUP\u CONCAT
函数来完成这一任务。查看此链接可获得有关如何使用它的深入教程 您可以使用mysql的GROUP\u CONCAT
功能来完成这项任务。查看此链接可获得有关如何使用它的深入教程 以条件聚合为轴心:
select user_id,
max(case when meta_key = 'State' then meta_value end) state,
max(case when meta_key = 'Addresss' then meta_value end) address,
max(case when meta_key = 'House_address1' then meta_value end) house_address1,
max(case when meta_key = 'type_house1' then meta_value end) type_house1,
max(case when meta_key = 'House_address2' then meta_value end) house_address2,
max(case when meta_key = 'type_house2' then meta_value end) type_house2
from wp_usermeta
group by user_id
您可以使用条件聚合进行透视:
select user_id,
max(case when meta_key = 'State' then meta_value end) state,
max(case when meta_key = 'Addresss' then meta_value end) address,
max(case when meta_key = 'House_address1' then meta_value end) house_address1,
max(case when meta_key = 'type_house1' then meta_value end) type_house1,
max(case when meta_key = 'House_address2' then meta_value end) house_address2,
max(case when meta_key = 'type_house2' then meta_value end) type_house2
from wp_usermeta
group by user_id