我在尋找什麼:
我在尋找一個SELECT查詢,允許我從每個對話中選擇最後一條消息。對話由兩側具有相同用戶ID的所有行組成。 示例:4-2 & 2-4。如何從mySQL中的每個對話中獲取最後一條消息?
信息表:
ID ----- SENDER_ID ----- Receiver_ID ----- 體 ----- 時間戳
1 ------------------- 4 --------------------- 2 -------- --... ----------------- ...
2 ------------------- 2 --- ------------------ 4 ----------...-----------------。 ..
3 ------------------- 4 --------------------- 2 ---- ------...-----------------。 ..
4 ------------------- 4 --------------------- 2 ---- ------... ----------------- ...
5 ------------------- 4 --------------------- 3 ----------...-------------- --- ...
6 ------------------- 3 --------------------- 4 ----------... ----------------- ...
結果:
ID --- - SENDER_ID ----- Receiver_ID ----- 體 ----- 時間戳
4 ------------------- 4 --------------------- 2 -------- ----... ----------------- ...
6 ------------------- 3- -------------------- 4 ----------...---------------- -...
一小問題,我可以使用它來獲得相同的結果,但選擇一個ID?假設我想獲取用戶3的最後一條消息,應該只有1個結果,對於用戶2是相同的。但用戶4應該有2個結果。 –
是的,你可以在第一個或第二個查詢上添加這個條件......首先它是'...來自其中sender_id = 3或receiver_id = 3 group by ...'或更短的消息......來自3(in sender_id,receiver_id)組中的消息...' – fthiella
再次感謝!你幫了我很多。 –