Zend DB加入具有多重计数的多个表

时间:2011-09-12 23:44:05

标签: mysql zend-framework magento join

我正在尝试将两个表连接到我的维护中,如下所示:

bannermanager_banner = main_table

bannermanager_banner_click = table我想要记录计数,其中maintainble.id = banner_click_table.banner_id

bannermanager_banner_impression = table我想要一个记录计数,其中maintainble.id = banner_impression_table.banner_id

我尝试了很多东西,关闭的我就是:

    $this->getSelect()
        ->join(array('bc' => $this->getTable('vortex_bannermanager/banner_click')), 'bc.banner_id=main_table.id', array('banner_click_count' => 'count(bc.id)'))
        ->join(array('bi' => $this->getTable('vortex_bannermanager/banner_impression')), 'bi.banner_id=main_table.id', array('banner_impression_count' => 'count(bi.id)'))
        ->group('main_table.id');

但计数正在返回每个= S

的总和

感谢您的任何指示。

1 个答案:

答案 0 :(得分:0)

按照计算和分组的性质,你无法通过这种方式真正实现它。如果在一个查询中需要多个计数,则需要使用子查询。