1

Тема: можно ли в Symfony 1.4 propel в запросе просуммировать по полю ?

Подскажите пожалуйста а можно ли в Symfony 1.4 propel
в запросе просуммировать по полю ? Если да, пожалуйста пример или ссылочку...

2 Отредактировано Sergic (2011-04-24 14:42:06)

Re: можно ли в Symfony 1.4 propel в запросе просуммировать по полю ?

использую пропел 1.5
не помню как через peer:: (там нужно ешо и self::doSelectStmt($c))
http://oldforum.symfony-project.org/index.php/m/83476/

но через query так
(http://www.propelorm.org/wiki/Documenta … ingColumns)

OrderQuery::create()
                        ->add(OrderPeer::PROFILE_ID, $this->getUser()->getProfile()->getId())
                            ->join('OrderItem', Criteria::LEFT_JOIN)
                            //->withColumn('count('.OrderItemPeer::ID.')', 'nbItems')
                            ->withColumn('SUM('.OrderItemPeer::QUANTITY.')', 'nbItems')
                            ->groupBy('Order.Id')
                        ->orderByOrderStatusId(Criteria::DESC)
                        ->orderByCreatedAt(Criteria::DESC)
                        ->find();

3

Re: можно ли в Symfony 1.4 propel в запросе просуммировать по полю ?

Можно, разрешаю...

Если сумма нужна сама по себе - просто получи коннект пдо из пропела и напиши простой и понятный запрос на SQL. ОРМ в данной ситуации задействовать совершенно не обязательно. Если поле с суммой нужно в составе других полей с данными - проще и экономичнее нарисовать вьюху и запрашивать ее привычным образом, не травмируя нежную психику ОРМ разными нетрадиционными запросами. default/smile