Cakephp3 - >如何在where where条件下使用计算字段

时间:2016-08-10 08:30:42

标签: cakephp cakephp-3.0

我们如何在任何想法的条件下使用计算字段?

假设

        $query = $this->table1
            ->find('all')
            ->select(['total_count' => '(SELECT count(*) FROM table2 where table2.fid = table1.id)'])
            ->autoFields(true)
            ->contain([
                'table2', 'table3'
                ])
            ->where(['total_count >' 1]);
  

找不到列:1054未知列'total_count'在哪里

有没有办法在where where条件下使用计算字段,或者如何解决这个问题呢?

1 个答案:

答案 0 :(得分:0)

经过一番搜索后找到答案

  

通过使用having,您可以在条件

中使用计算字段
$query->having(['total_count >' => 0]);