如何通过mysql中的multple表在单个查询中获取所有数据(Just like name,Father,Mother,Own name)数据?

时间:2016-02-17 13:50:46

标签: mysql

我有两张桌子。就像

---- UserTable ----

id  user    email       
1   admin   admin@gmail.com
2   editor  editor@gmail.com

---- NameTable ----

name    userid  fullname    mobile
own         1   Rahim       012314
father      1   Karim       120120
mother      1   Florin      212021

如何在mysql的单个查询中获取所有数据(就像名字,父亲,母亲,自己的名字一样)?

1 个答案:

答案 0 :(得分:0)

为每个名称加入名称表一次:

select id, u.user, email, o.fullname own, f.fullname father, m.fullname mother
from users u
left join nametable o on o.userid = u.id and o.name = 'own'
left join nametable f on f.userid = u.id and f.name = 'father'
left join nametable m on m.userid = u.id and m.name = 'mother'

请注意名称表中的所有条件必须如何处于连接条件中,以允许连接保持为外连接。