【问题标题】:Paginate in CakePHP with sum of multiple rows from specific column of another model在 CakePHP 中使用来自另一个模型的特定列的多行总和进行分页
【发布时间】:2013-12-01 14:39:14
【问题描述】:

抱歉问题标题。英语不是我的主要语言,我不知道如何表达我遇到的麻烦。

我有这两张表:

  • 访问次数
  • 售罄

关系是:每次访问都有多个售罄

如何在 CakePHP 上创建一个 $paginate,将 SELLOUTS 中所有行的 SUM 与每个 VISIT 相加?

所以:

预期分页结果

____________________________ |身份证 |访问日期 |售罄 | ++++++++++++++++++++++++++++++++ | 1 | 11/2 | 200 | |____|____________|__________|

其中“200”个售出的数量是 Sellouts 表中相对行的总和:

售罄表

_________________________ |身份证 |访问 ID |价值 | +++++++++++++++++++++++++++++ | 1 | 1 | 50 | | 2 | 1 | 50 | | 3 | 1 | 50 | | 4 | 1 | 50 | |____|__________|_________|

【问题讨论】:

  • 你有没有看过虚拟字段可以帮助你的情况?
  • 你刚刚拯救了我的一天 :D 非常感谢! :)

标签: sql cakephp pagination


【解决方案1】:

正如@ayo-akinyemi 所说。虚拟字段可以完成这项工作。

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

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

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

$paginator['访问']['sellouts']

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-21
    • 2010-11-30
    • 2011-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多