【问题标题】:Zend DB Join Multiple Tables with Multi CountZend DB 使用多计数连接多个表
【发布时间】:2011-09-12 23:44:04
【问题描述】:

我正在尝试将两个表加入到我的主表中,如下所示:

bannermanager_banner = main_table

bannermanager_banner_click = table 我想要一个记录计数 where maintable.id = banner_click_table.banner_id

bannermanager_banner_impression = table 我想要一个记录计数 where maintable.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 的总和

感谢您的任何指点。

【问题讨论】:

    标签: mysql zend-framework magento join


    【解决方案1】:

    由于 count 和 group by 的性质,您无法以这种方式真正实现它。如果您需要在一个查询中进行多个计数,则需要使用子查询。

    【讨论】:

    • 干杯,这正是我所做的 =]
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-08
    • 2012-03-13
    • 1970-01-01
    • 1970-01-01
    • 2011-02-05
    • 1970-01-01
    相关资源
    最近更新 更多