Doctrine 2 Использование Оператора Sum В Dql С Джойнами Нескольких Таб

Nixel

New Member
13.12.2010
4
0
#1
Всем привет!

У меня есть работающий запрос на DQL

Код:
SELECT partial cap.{id, title, name},
clogin,
partial ccampaig.{id, name},
cadv, ckeyword,
partial ckeywordstat.{id, clicksSearch, sumSearch, showsSearch}

FROM MyBundle:ContextAdvPlatform cap

LEFT JOIN cap.contextLogins clogin
LEFT JOIN clogin.contextCampaigns ccampaig
LEFT JOIN ccampaig.contextAdvs cadv
LEFT JOIN cadv.contextKeywords ckeyword
LEFT JOIN ckeyword.contextKeywordStats ckeywordstat

GROUP BY ckeywordstat.contextKeyword

Если поменять
Код:
partial ckeywordstat.{id, clicksSearch, sumSearch, showsSearch}
на
Код:
partial ckeywordstat.{
id, 
SUM(clicksSearch),
SUM(sumSearch),
SUM(showsSearch)
}
То вылезет исключение
Error: Expected Doctrine\ORM\Query\Lexer::T_CLOSE_CURLY_BRACE, got '('

Если поменяем на
Код:
ckeywordstat.id,
SUM(ckeywordstat.clicksSearch),
SUM(ckeywordstat.sumSearch),
SUM(ckeywordstat.showsSearch)

То получим 4 поля в самом конце вернувшегося массива без суммирования.

Как правильно написать запрос, который будет группировать ckeywordstat для каждого ckeyword при этом сумируя поля clicksSearch, sumSearch, showsSearch

Doctrine version 2.3.3-DEV

Всем заранее спасибо за помощь ! ))