$options = array('order' => array('MemberMessage.send_date_time' => 'desc'),
'fields' => array('MemberMessage.id','MemberMessage.message'),
'group' => 'MemberMessage.message_reciever_id');
$this->MemberMessage->recursive = 0;
$MemberMessages = $this->MemberMessage->find('all',$options);
我通过使用以下查询解决此问题:
$ MemberMessages = $ this-> MemberMessage-> query(“ SELECT * FROM(
SELECT conversation_user_id,message, send_date_time
FROM (
SELECT DISTINCT message_reciever_id AS conversation_user_id, id, message, send_date_time
FROM (
SELECT *
FROM member_messages
WHERE message_sender_id =".$this->request->data['MemberMessage']['user_id'].
" ORDER BY send_date_time DESC
) AS t
GROUP BY message_reciever_id
UNION
SELECT DISTINCT message_sender_id AS conversation_user_id, id, message, send_date_time
FROM (
SELECT *
FROM member_messages
WHERE message_reciever_id =".$this->request->data['MemberMessage']['user_id'].
" ORDER BY send_date_time DESC
) AS u
GROUP BY message_sender_id
) AS CONVERSATION
ORDER BY send_date_time DESC
) AS conversation
GROUP BY conversation_user_id");
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句