MySQL sort grouped data -
i have tried program inbox display messages in order received , if have been read or not, seemed work while, not doesn't. may have worked under circumstances maybe..
anyway here query;
select `id`, `from_userid`, `read`, max(sent) sent (`who_messages`) `to_userid` = '41' group `from_userid` order `read` asc, `sent` desc i believe problem messages being grouped in wrong order.. inbox showing read, when new messages exist. right time of new messages, guessing because selected max(sent).
is logic wrong? or can sort , group efforts have resulted in 'every derived table must have own alias'
"inbox display messages in order received , if have been read or not ... suppose latest message" - assumes read nullable date/time column, , messages stored in order sent (newer have larger id older - autoid)
select wm.id, wm.from_userid, (wm.read null) unread, wm.sent (select max(id) id who_messages to_userid = '41' group from_userid) sub inner join who_messages wm on sub.id = wm.id order wm.sent desc, wm.read
Comments
Post a Comment