MySQL区分按对分组的最新记录

MySQL区分按对分组的最新记录,mysql,Mysql,我有一张MySQL表: id author_id recipient_id message message_time 1 16 18 lorem ipsum1 2015-10-20 14:24:49 2 18 16 lorem ipsum2 2015-10-21 11:14:51 3 16 22 lorem

我有一张MySQL表:

    id  author_id  recipient_id  message        message_time
    1   16         18            lorem ipsum1    2015-10-20 14:24:49
    2   18         16            lorem ipsum2    2015-10-21 11:14:51
    3   16         22            lorem ipsum3    2015-10-21 14:42:01
    4   18         16            lorem ipsum4    2015-10-21 16:53:55
    5   16         17            lorem ipsum5    2015-10-22 10:37:44
我只想获得最新的记录,但按成对分组,如:

    WHERE `author_id` = '$var' OR `recipient_id` = '$var'
我的预期结果:

    message        message_time
    lorem ipsum3    2015-10-21 14:42:01
    lorem ipsum4    2015-10-21 16:53:55
    lorem ipsum5    2015-10-22 10:37:44
我很乐意听取意见

这样试试

select a.message, max(b.message_time) 
from yourTable a, yourTable b
where  a.author_id = $var OR a.recipient_id = $var
and a.id = b.id
group by a.message;