在我们的聊天应用程序中,以下是这种情况,有两个人与'B'聊天的人'A',1)一对一聊天和2)群聊。所以在数据库中的记录如下,
表:核心
id name
1 A
2 B
3 C
表:主人
id core_id
1 1
2 2
表:接收
id core_id master_id
1 1 1
2 2 1
3 1 2
4 2 2
5 3 2
所以在recepient表中,我们有2个Person'A'条目。现在的问题是,我想要master_id = 1表格接收表,其中传达了'A'和'B'的人。但是在接收表中有两个条目。那么如何获得那个id?
答案 0 :(得分:0)
目前还不清楚你在问什么,你的桌面名称无助于使这个更清楚。但是,我怀疑您是仅根据master_id从收件人表中选择记录,并且需要与其他表连接,以便您还可以在查询中包含该名称。
所以考虑到这一点,尝试以下(警告:我没有测试过这个,我使用Oracle而不是mysql)但是:
select *
from core c, master m, recipient r
where c.id = m.core_id
and c.id = r.core_id
and m.id = r.master_id
and c.name = 'A'
在有人抱怨这个sql不遵循最新的ANSI标准之前,这就是我这样做的方式,它对我有用!