【发布时间】:2011-04-13 06:50:49
【问题描述】:
我有三张桌子。 Skills(id)、Users(id) 和 user_skills(user_id, Skill_id)。
现在,我尝试左外连接,例如:
select * from skills left outer join user_skills ON skills.id = user_skills.skill_id;
但它不会带回我需要的东西,因为没有检查用户 ID。 如果我这样做:
select * from skills left outer join user_skills ON skills.id = user_skills.skill_id where user_skills.user_id = 986759322;
我根据特定的用户 ID 取回一条记录。
但是,我想取回某个用户的所有技能,无论该用户是否发现了该技能。所以,如果技能是 4,我想要返回 4 行,其中包括技能信息以及如果用户具有该技能的用户信息。如果没有,则此信息将为空,但所有技能信息都会存在。
我怎样才能进行这样的查询?
【问题讨论】: