SQL查询基于两个表进行比较和获取信息

时间:2011-09-22 12:49:18

标签: mysql

我有两张桌子。联系人和组联系人。我希望列出x组的所有联系人。

表A. 表名:联系人 字段:crmcListId crmcId

表B. 表名:contactgroups 字段:crmcgrId crmcgrContactId crmcgrGroupId

字段crmcgrID = crmListID 字段crmcID = crmContactID

我希望表a中的所有联系人都属于组x列表。 来自表联系人组,其中crmcgrGroupID = x

2 个答案:

答案 0 :(得分:1)

做类似的事情:

SELECT c.* FROM Contacts c WHERE c.ID IN (SELECT ContactID FROM groupcontacts) 

OR与联接:

SELECT c.* FROM Contacts c 
INNER JOIN groupcontacts gc ON c.ID = gc.ContactID

然后,您可以添加WHERE子句以选择特定组的ID。

答案 1 :(得分:0)

由于你的桌子看起来并不完全清楚,我将在黑暗中拍摄:

Select * 
From Contacts c
inner join GroupContacts gc on gc.ContactID = c.ContactID
where gc.GroupID = x

只需将x替换为真实的群组ID