2012-03-06 77 views
1

在Cake中,我正在检索一个包含MIN/MAX/SUM/GROUP的数据集,但我也想要拉其他相关数据表(包含)。这是否需要两个单独的请求,或者是否有方法来构造一个蛋糕请求来处理这个问题?cakephp容纳聚合查询

回答

0

取决于您想要检索的内容。你能举一些例子吗?还是更多细节?您可以使用的联接之一梅索德,或UNION或子查询

小例子:(这是从CakePHP的电子书2.0 ..)

$SubQueryCondition['`User2`.`status`'] = 'B'; 

$dbo = $this->User->getDataSource(); 
$subQuery = $dbo->buildStatement(
    array(
     'fields' => array('`User2`.`id`'), 
     'table' => $dbo->fullTableName($this->User), 
     'alias' => 'User2', 
     'limit' => null, 
     'offset' => null, 
     'joins' => array(), 
     'conditions' => $conditionsSubQuery, 
     'order' => null, 
     'group' => null 
    ), 
    $this->User 
); 
$subQuery = ' `User`.`id` NOT IN (' . $subQuery . ') '; 
$subQueryExpression = $dbo->expression($subQuery); 

$conditions[] = $subQueryExpression; 

$this->User->find('all', compact('conditions'));