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