我有一个wordpress数据库中的两个表。 一表“用户”,包含列: ID,user_url,USER_EMAILJOIN两个表(一个需要连接)
我需要加入这其中包含列的第二台“usermeta”: USER_ID,meta_key,meta_value但需要有行首先连接在一起。
user_id meta_key meta_value
1 first_name Joe
1 last_name Smith
2 first_name Jane
2 last_name Doe
需求,成为
user_id meta_key meta_value
1 first_name,last_name Joe,Smith
2 first_name,last_name Jane,Doe
我已经能够使用连接表:
$result = mysql_query("SELECT * FROM users
INNER JOIN usermeta ON usermeta.user_id = users.ID
GROUP BY usermeta.user_id");
然而,在打印时/呼应的结果,“回声$行['meta_value “];”只返回给定ID的第一行。
,如果我不群吧,我结束了对每个多行user_id说明
我可以用做串接工作:
$result = mysql_query("SELECT user_id, GROUP_CONCAT(meta_value) AS Customer_Address
FROM usermeta
WHERE usermeta.meta_key='first_name'
or usermeta.meta_key='last_name'
or usermeta.meta_key='paupress_address_one_1'
or usermeta.meta_key='paupress_address_city_1'
or usermeta.meta_key='paupress_address_state_1'
or usermeta.meta_key='paupress_address_postal_code_1'
or usermeta.meta_key='user_type'
or usermeta.meta_key='telephone'
or usermeta.meta_key='paupress_field_business'
GROUP BY user_id");
但是,这个方案不给我访问到第一张桌子。我需要一种方法来连接一个表,并根据用户ID将其连接到另一个表,然后能够打印电子邮件,网址和连接的“Customer_Address”的值。我尝试了各种组合和子查询,但是却尝试了各种各样的组合和子查询似乎无法使这项工作
这工作完美!我昨天花了12个小时......谢谢soooooo! – 2014-09-24 19:08:43