1

如何在 cakephp 中按字段分组和按 DESC 排序?

$this->set('messages', $this->Message->find('all',array('conditions' => array('Message.receiver_id'=>$this->Session->read('Auth.User.id')),'group' => array('Message.user_id'),'order' => array('max(Message.created) ASC'))));
4

2 回答 2

2

在 cakePhp 中获取记录取决于模型是

$records = $this->Model->find('all', array(
            'conditions' => array(conditons),
            'fields' => array(fieldlist),
            'group' => array('Model.column'),
            'order' => array('Model.column', 'Model.column2 DESC')
        ));

从您的代码中,您可以编写为

$data = $this->Message->find('all', array(
               'conditions' => array( 'Message.receiver_id'=>$this->Session->read('Auth.User.id')),
               'group' => array('Message.user_id'),
               'order' => array('max(Message.created) ASC')
               ));

$this->set('messages', $data);

于 2019-04-29T11:33:11.150 回答
0
$records = $this->Model->find('all', array(
            'conditions' => array(conditons),
            'recursive' => -1,
            'fields' => array(fieldlist),
            'group' => array('Model.column'),
                    'order' => array('Model.column', 'Model.column2 DESC')
        ));

如果您想按插入的最新消息排序,而不是像这样created使用排序方式排序idModel.id DESC'

于 2013-01-28T12:24:54.900 回答