Ben iletileri içeren bir mysql tablo var:
id (INT)
sender_id (INT)
recipient_id (INT)
sent_time (INT)
read_time (INT)
body (TEXT)
Ben X alınan veya başka (farklı) kullanıcılara gönderilen en son mesajlar kullanıcı listesini almak gerekiyor.
In other words I'd like to create a full list of conversations with other users, sorted by sent_time of last message exchanged with a given user. The end result (processed in PHP) is going to like like this:
array (
array (other_user_1_id, last_msg_sent_time, last_msg_is_read,
last_msg_is_to_me/from_me, number_of_messages*),
array (other_user_2_id, ... )
)
*) number_of_messages
isteğe bağlı, ama olması oldukça güzel.
Soru: Bunu nasıl en verimli şekilde yaparsınız? Ayrı bir tablo "konuşmaları" oluşturma ve güncellemek her kimse gönderir veya okuyan bir mesaj ya da bir tek oluşturmak zaman, ama "mesajlar" masada sofistike sorgu? Ikincisi ise, sorgu neye benzer ki?