$lastComments = $this->Comment->find('all', array('fields' => array('Comment.news_id', 'Comment.date', 'Comment.content'),
'group' => array('Comment.news_id, Comment.date'),
'order' => array('Comment.date DESC'))
);
我们的想法是从独特主题中获取最新评论(1条评论 - 1个主题)。
此代码不处理唯一ID(唯一主题),我该如何解决?
区别不起作用。
$lastComments = $this->Comment->find('all', array('fields' => array('Comment.news_id', 'Comment.date', 'Comment.content'),
'group' => array('Comment.news_id'),
'order' => array('Comment.date DESC'))
);
此代码将返回唯一主题,但按日期排序不起作用:/
答案 0 :(得分:1)
我认为这会对你有所帮助......试试这个
$this->Post->find('all',array( 'order' => array('id DESC') ) );
答案 1 :(得分:1)
$this->Comment->find('first', array('order'=>array('Comment.id DESC')));
答案 2 :(得分:0)
你提到DISTINCT不起作用。您是否在CakePHP中使用DISTINCT语法时遇到问题,或者是否正确使用DISTINCT并未产生正确的结果?我试试:
$lastComments = $this->Comment->find('all', array('fields' =>
array('DISTINCT Comment.news_id', 'Comment.date', 'Comment.content'),
'order' => array('Comment.date DESC'))
);
答案 3 :(得分:-1)
如果它可以提供帮助,我遇到了没有cakephp的相同问题,解决方案是使用 max(日期)
在cakephp中出现类似的事情:
$lastComments = $this->Comment->find('all',
array('fields' => array('Comment.news_id',
'Comment.date',
'Comment.content'),
'group' => array('Comment.news_id'),
'order' => array('max(Comment.date) DESC'))
);