mysql子查询在第二个表

时间:2016-04-08 07:11:33

标签: mysql

我有以下两个表格。

基本上我需要将employee与user_hr表匹配

由于user_hr的名字和姓氏有两个字段..员工只有1个字段

我认为加入他们不会给我一个结果。

表员工

id Fullname
1  ESTRELLADO, Jedidiah B.
2  Molano, Rodolfo B.
3  YU, Roxanne

表user_hr

id Firstname   Lastname
1  Rodolfo     Molano
2  May         Rio
3  Jedidiah B  ESTRELLADO

我有一个查询将fullname拆分为lastname和firstname

SELECT 
SUBSTRING_INDEX(SUBSTRING_INDEX(`FullName`, ',', 1), ',', -1) AS lastname,
SUBSTRING_INDEX(SUBSTRING_INDEX(`FullName`, ',', 3), ',', -1) AS firstname
FROM `employee`

或类似的东西

select FullName from employee
 where FullName 
in 
(
  select fullname from user_hr
)

我想要做的是匹配我的第二张桌子上的姓氏名字

能够像这样看到结果。

Firstname   Lastname
Rodolfo     Molano
ESTRELLADO  Jedidiah B  

1 个答案:

答案 0 :(得分:0)

试试这个

 Select 
 SUBSTRING_INDEX(SUBSTRING_INDEX(`e.FullName`, ',', 1), ',', -1) AS e.lastname,
 SUBSTRING_INDEX(SUBSTRING_INDEX(`e.FullName`, ',', 3), ',', -1) AS e.firstname
 from employee e RIGHT JOIN user_hr u where e.lastname OR e.firstname =  e.Fullname