大家好,我正在尝试从两个表中选择字段,并根据条件显示两次该字段之一,基本上我需要:
wp_cimy_uef_data.VALUE WHERE wp_cimy_uef_data.FIELD_ID = 3
wp_cimy_uef_data.VALUE WHERE wp_cimy_uef_data.FIELD_ID = 4
wp_users.user_email
我知道我必须加入表格,并且我想我做对了,但是到目前为止,我不知道如何基于WHERE选择两次VALUE字段:
SELECT wp_cimy_uef_data.VALUE, wp_users.user_email, FROM wp_users JOIN wp_cimy_uef_data ON wp_users.ID = wp_cimy_uef_data.USER_ID
我虽然可能会像
SELECT (wp_cimy_uef_data.VALUE WHERE wp_cimy_uef_data.FIELD_ID = 3), (wp_cimy_uef_data.VALUE WHERE wp_cimy_uef_data.FIELD_ID = 4)
但显然那是错误的。
最佳答案
如果我理解正确,则可以通过两个联接执行所需的操作:
SELECT d3.VALUE, d4.value, u.user_email
FROM wp_users u JOIN
wp_cimy_uef_data d3
ON u.ID = d3.USER_ID and d3.field_id = 3 JOIN
wp_cimy_uef_data d4
ON u.ID = d4.USER_ID and d4.field_id = 4;
请注意使用表别名来区分表的两个版本。
关于mysql - SQL-来自多个表的信息,具有相同字段的两个变体。,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25818174/