Orm spreep和SQL聚合函数

Orm spreep和SQL聚合函数,orm,symfony-1.4,propel,Orm,Symfony 1.4,Propel,以下SQL查询在Prope(1.4)中是什么样子的 我用谷歌做了一些研究,但我发现的所有例子都是按子句分组计算的。我只需要一个值 在这里添加一个GROUPBY语句并没有什么坏处,因为它有助于汇总您的语句,只需按您的orderId分组即可。如果你不想分组,就把那行删掉 $value = OrderEquipmentQuery::create() ->withColumn('SUM(price_equipment)') ->filterByOrde

以下SQL查询在Prope(1.4)中是什么样子的


我用谷歌做了一些研究,但我发现的所有例子都是按子句分组计算的。我只需要一个值

在这里添加一个GROUPBY语句并没有什么坏处,因为它有助于汇总您的语句,只需按您的orderId分组即可。如果你不想分组,就把那行删掉

$value = OrderEquipmentQuery::create()
          ->withColumn('SUM(price_equipment)')
          ->filterByOrderId(57072)
          ->groupByOrderId()
          ->find()

在1.6中就是这样做的,对于1.4,我将查看j0k给出的示例,但请记住,在查询中按orderId分组可能是安全的,在这里添加一个group by语句并没有什么坏处,因为它将帮助汇总您的语句,只需按orderId分组即可。如果你不想分组,就把那行删掉

$value = OrderEquipmentQuery::create()
          ->withColumn('SUM(price_equipment)')
          ->filterByOrderId(57072)
          ->groupByOrderId()
          ->find()

在1.6中就是这样做的,对于1.4,我将查看j0k给出的示例,但请记住,在查询中按orderId分组可能是安全的

我认为推进1.4的语法类似于:

$c = new Criteria();
$c->add(OrderEquipmentPeer::ORDER_ID, $orderId);
TestPeer::addSelectColumns($c);
$c->addAsColumn('price_sum', 'SUM('.OrderEquipmentPeer::PRICE_EQUIPMENT.')');
$results = OrderEquipmentPeer::doSelectStmt($c);

从1.4中很难找到文档,因为它们已经扼杀了propolorm.org上的旧wiki,但我认为这是正确的。正如我在其他评论中所说的,你应该考虑升级到1.6,因为它有更多的特性和更好的稳定性。据我所知,1.4分支根本没有得到维护。

我认为推进1.4的语法类似于:

$c = new Criteria();
$c->add(OrderEquipmentPeer::ORDER_ID, $orderId);
TestPeer::addSelectColumns($c);
$c->addAsColumn('price_sum', 'SUM('.OrderEquipmentPeer::PRICE_EQUIPMENT.')');
$results = OrderEquipmentPeer::doSelectStmt($c);

从1.4中很难找到文档,因为它们已经扼杀了propolorm.org上的旧wiki,但我认为这是正确的。正如我在其他评论中所说的,你应该考虑升级到1.6,因为它有更多的特性和更好的稳定性。据我所知,这1.4个分支根本没有得到维护。

看看这个问题:看看这个问题:注意这个答案仍然是1.6(不是按OP指定的1.4推进),但实际上,“biera,你应该考虑升级到1.6——这是更好的。请注意,这个答案仍然是1.6。(不按OP规定推进1.4),但实际上,“biera,你应该考虑升级到1.6 -这是更好的。