如何从2个mysql表中查询数据并将结果连接在一起。我的尝试给了我太多的结果
我需要将成员从ExpressionEngine迁移到WordPress。到目前为止,我在Stackoverflow上得到了以下查询的帮助,该查询非常有效,可以生成696个结果(正确的成员数)。但是,我还需要从另一个表中导出一些列,当我将它们添加到查询中时,会得到484416个结果(696 x 696) 以下是返回696个结果的原始查询:如何从2个mysql表中查询数据并将结果连接在一起。我的尝试给了我太多的结果,mysql,wordpress,expressionengine,Mysql,Wordpress,Expressionengine,我需要将成员从ExpressionEngine迁移到WordPress。到目前为止,我在Stackoverflow上得到了以下查询的帮助,该查询非常有效,可以生成696个结果(正确的成员数)。但是,我还需要从另一个表中导出一些列,当我将它们添加到查询中时,会得到484416个结果(696 x 696) 以下是返回696个结果的原始查询: SELECT username AS user_login, username AS user_nicename, email AS user_email,
SELECT username AS user_login,
username AS user_nicename,
email AS user_email,
url AS user_url,
screen_name AS display_name,
FROM_UNIXTIME(join_date) AS user_registered
FROM exp_members
下面是我想做的,我试着用的查询生成器来做。从exp\u member\u data
表中获取名为m\u field\u id\u 1
的列,并将其作为user\u location
返回。此查询生成484416个结果
SELECT exp_members.username AS user_login,
exp_members.username AS user_nicename,
exp_members.email AS user_email,
exp_members.url AS user_url,
exp_members.screen_name AS display_name,
FROM_UNIXTIME(join_date) AS user_registered,
exp_member_data.m_field_id_1 AS user_location // here is the m_field_id_1
FROM exp_members, exp_member_data
如何正确地组合这两个表,使返回的结果仍然只有696个,但有额外的列?谢谢您需要表之间的
连接
条件,或者您得到两个条件的笛卡尔乘积(表1的所有行乘以表2的所有行,或者在本例中为696^2)
以上假设在exp\u member\u data
中有一列名为username
,它映射到exp\u member.username
。如果它们之间有一个id列,请使用它,如中所示:
JOIN exp_member_data ON exp_members.member_id = exp_member_data.member_id
你可以根据一些常用键连接这两个表。谢谢,迈克尔,工作得很好。两个表之间都有一个
member\u id
列。这会让我更进一步:)
JOIN exp_member_data ON exp_members.member_id = exp_member_data.member_id