2010-01-15 33 views
1

我需要去两个表来获得相应的信息这是什么样的SQL连接?

exp_member_groups 
-group_id 
-group_title 

exp_members 
-member_id 
-group_id 

我有适当的member_id

所以我需要检查的成员表,拿到GROUP_ID,然后去组表匹配group_id并从中获取group_title。

回答

4

INNER JOIN:

SELECT exp_member_groups.group_title 
FROM exp_members 
INNER JOIN exp_member_groups ON exp_members.group_id = exp_member_groups.group_id 
WHERE exp_members.member_id = @memberId 
2
SELECT g.group_title 
FROM exp_members m 
    JOIN exp_member_groups g ON m.group_id = g.group_id 
WHERE m.member_id = @YourMemberId 
1

如果总是有一个匹配组,或者你只是想排它在哪里,那么这将是一个INNER JOIN

SELECT g.group_title 
FROM exp_members m 
     INNER JOIN 
       exp_member_groups g 
       ON m.group_id = g.group_id 
WHERE m.member_id = @member_id 

如果您要行即使GROUP_ID不匹配,那么它是一个LEFT JOIN - 在上面LEFT JOIN更换INNER JOIN