你能帮我制定一个SQL查询来加入3个表吗?

时间:2012-08-27 21:18:36

标签: php mysql

我不知道怎么做,所以我在这里问它......

我的数据库中有3个表格,结构如此..

表:联系-----行:contact_id,firstname

table:groups ------ rows:group_id,group_name

table:groupmembership ------ rows:contact_id,group_id

表“group_membership”中“contact_id”和“group_id”之间的关联反映了特定群组中的联系人。

我需要做的是拿一个contact_id,并在下拉列表中显示他是哪个组成员。我最终会使用此下拉列表将group_id发布到覆盖组信息的页面。

任何人都可以帮我解决如何制定MySQL查询的问题吗?

1 个答案:

答案 0 :(得分:1)

如果您想通过user_id选择:

SELECT group_name, group_id
FROM groupmembership gm
INNER JOIN groups g ON g.group_id = gm.group_id
WHERE gm.contact_id = 4711

如果您想按用户的名字选择:

SELECT group_name, group_id
FROM groupmembership gm
INNER JOIN groups g ON g.group_id = gm.group_id
INNER JOIN contact c ON c.contact_id = gm.contact_id
WHERE c.firstname LIKE 'TheHe';