2
我需要在存储聊天消息的相当简单的表上执行复杂查询。该表具有以下的列:使用MySQL在聊天消息数据库中获取公共连接
|message_id|from|to|body|
的from
和to
领域包含只是编码为整数用户ID。在应用程序中,如果用户A
已向用户B
发送消息,则用户A
和用户B
之间存在对话,反之亦然。我现在的问题是,对于用户A
,我需要查询A
与B
有关对话的所有人。
因此,举例来说,如果用户A
与用户B
和D
和用户B
的对话与用户C
交谈,我需要查询的A
和B
所有普通用户,结果集将只包含C
。由于用户B
与用户D
没有对话,因此不包括D
。
我有MySQL的经验,但我不知道从哪里开始。我更喜欢在一次运行中执行这个(复杂)查询,但是我想知道是否存在具有多个查询的高效算法来执行此任务。
任何帮助将不胜感激!
当A与B和d一multichat,如果A发送一个消息,你应该插入2列在表中:'ROW1 = 'A' ,'B','HelloWorld';''row2 ='A','D','HelloWorld';'这样你可以追踪每一条消息。 –
所以....是我的回答错误还是你忘了这个问题? – GGG
@GGG:我没时间看你的答案,但绝对会! – Devos50