首先,我是查询多个表的新手,所以如果这是一个有点愚蠢的问题,我很抱歉,但我们都必须从某个地方开始!
我制作了一张图片,应该更容易理解:
http://www.mediumsliced.co.uk/temp/mysqlhelp.jpg http://www.mediumsliced.co.uk/temp/mysqlhelp.jpg
我的第一张桌子wp_user有几列 - 我想要 3 列中的值,即 ID user_email 和 user_nicename。
我的第二张桌子wp_用户元有 3 列存储用户的元数据。这些列是 user_id、meta_key 和 meta_value。该表中的 user_id 值始终对应于中的匹配 ID 值wp_user(见图)。
我想将meta_key 字段中的数据与其meta_value 一起加入。到目前为止我有这个:
SELECT wp_users.ID, wp_users.user_login, wp_users.user_nicename, wp_users.user_email,
wp_usermeta.user_id, wp_usermeta.meta_key, wp_usermeta.meta_value
FROM wp_users, wp_usermeta
WHERE (wp_users.ID = wp_usermeta.user_id);
这显示了我需要的所有信息,但我遇到的问题是,我实际上想将 meta_key 中的数据显示为单独的列,并根据用户的 ID 将元键的 meta_value 显示在该用户的正确行中。我还需要排除任何 wp_user_level 不为 0 的用户。(再次希望我提供的图片更清楚)
显然,当涉及到 MySql 时,我有很多东西需要学习,但如果有人可以指导我得到最终结果,我将非常感激,如果你能解释查询,以便我可以从中学习,而不是仅仅复制,我将非常感激并将其粘贴到位。
非常感谢,如果您需要更多信息或需要我澄清任何事情,请随时询问!
Craig