我有3个相互交织的桌子(除其他外,与此无关)。这些是人员,线索和职位。在设计首页时,我试图在当前当前帖子总数的线程名称旁边显示一个计数。如果是SQL,我可以很容易地做到这一点,但是由于我对语法不太熟悉,因此使用cakephp时我感到很困惑。
表的连接如下(到目前为止):线程:person_id(创建线程的人)帖子:thread_id(与之相关的线程),person_id(已发布的人员)。
这可以通过在SQL中测试post_id时进行分组来完成。如果可以的话,请在cakephp中向我展示一个语法,说明应该如何做。这太好了!
谢谢
包含group by子句的查询的总数,而不必以任何方式重写查询。例如,考虑使用此查询来检索商品ID及其评论数。
$query = $posts->find();
$query->select(['post.post_id', $query->func()->count('Comments.id')])
->matching('Comments')
->group(['post.post_id']);
$total = $query->count();
计算后,查询可用于通过以下方式获取关联记录:
$list = $query->all();
有关更多示例: