CakePHP中的Paginate,具有来自另一个模型的特定列的多行的总和

时间:2013-11-18 12:32:57

标签: sql cakephp pagination

对不起问题标题。英语不是我的主要语言,我无法弄清楚如何表达我遇到的麻烦。

我有这两个表:

  • 访问
  • 爆满

关系:每次访问都有多次销售

如何在CakePHP上创建$ paginate,在SELLOUTS中添加相对于每个VISIT的所有行的SUM?

所以:

预期分页结果

 ____________________________
| ID | VISIT_DATE | SELLOUTS |
 ++++++++++++++++++++++++++++
|  1 |    11/2    |   200    |
|____|____________|__________|

“200”卖出的数量是卖出表中相对行的总和:

卖出表

 _________________________
| ID | VISIT_ID |  VALUE  |
 +++++++++++++++++++++++++
|  1 |     1    |   50    |
|  2 |     1    |   50    |
|  3 |     1    |   50    |
|  4 |     1    |   50    |
|____|__________|_________|

1 个答案:

答案 0 :(得分:0)

正如@ ayo-akinyemi所说。虚拟领域可以胜任。

刚刚在我的访问模型中创建了一个虚拟字段:

var $virtualFields = array(
        "sellouts" => "SELECT SUM(value) AS sellouts FROM Sellouts WHERE Visits.id = Sellouts.visit_id"
    );

然后,在我看来,我可以使用

访问此字段
$paginator['Visit']['sellouts']