2016-02-12 36 views
1

我有一个场景,我需要将一个表中的列与另一个表中的行进行匹配。MySQL查找行中的列值

我有两个表:employee_id和id_entries。

EMPLOYEE_ID具有以下结构:

employee_id  id_1 id_2 
    1    123  456 
    2    789  120 
    3    345  678 
    4    901  234 

id_entries具有以下结构:

employee_name id_number 
    John Doe   123 
    Jane Smith  789 
    John Doe   456 
    Jane Smith  120 

我希望能够给雇员标识字段相匹配的EMPLOYEE_ID表中id_entries表employee_name哪里有id_1和id_2的条目。

例如

employee_id  employee_name id_1 id_2 
    1    John Doe   123  456 
    2    Jane Smith  789  120 

我已经尝试了几种不同的连接,但一直没能带回正确的结果。提前致谢。

+0

这似乎是一个奇怪的场景。这里发生了什么? – Strawberry

+0

在id_entries表中是否有'id_number' ** unique **? –

+0

只需内连接可以为你做。 –

回答

1

你需要把它加入到id_entries表的两个实例,每个ID coluomn:

select emploee_id, a.emploee_name, id_1, id_2 form 
employee_id inner join id_entries as a on employee_id.id_1 = a.id_num 
inner join id_entries as b on employee_id.id_2 = b.id_num 
where a.emploee_name = b.emploee_name 
+0

这样做。谢谢! –