Что это за SQL-соединение? - PullRequest
       3

Что это за SQL-соединение?

1 голос
/ 15 января 2010

Мне нужно перейти к двум таблицам, чтобы получить соответствующую информацию

exp_member_groups
-group_id
-group_title

exp_members
-member_id
-group_id

У меня есть соответствующий member_id

Так что мне нужно проверить таблицу участников, получить идентификатор_группы, затем перейти к таблице групп, сопоставить идентификатор_группы и получить из нее название_группы.

Ответы [ 3 ]

4 голосов
/ 15 января 2010

ВНУТРЕННЕЕ СОЕДИНЕНИЕ:

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 голосов
/ 15 января 2010
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 голос
/ 15 января 2010

Если всегда есть подходящая группа или вы хотите, чтобы строки были только там, где она есть, то это будет 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 - замените INNER JOIN на LEFT JOIN в приведенном выше.

...