我试图在propel中运行一个运行聚合函数(SUM)的查询。
我的代码
$itemQuery = SomeEntity::Create();
$itemQuery->withColumn('SUM(SomeColumn)', someColumn)
->groupBy(SomeForeignKey);
问题
理论上它应该返回每组项目的总和,但问题是推动尝试获取所有列,并且还将一堆其他列附加到group by子句。这会导致意外的分类,因此总和不正确。
无论如何,只是在我运行聚合函数的列上进行推送获取,以便group by语句也能正常工作?
答案 0 :(得分:0)
您需要为列和外键添加select语句:
$itemQuery = SomeEntity::Create();
$itemQuery->select(array(SomeColumn, SomeForeignKey));
$itemQuery->withColumn('SUM(SomeColumn)', someColumn);
$itemQuery->groupBy(SomeForeignKey);