0
愚かな質問ですが、私は答えを見つけることができません。Doctrineで合計リレーションカウンターを更新する
は、私はこのようなクエリを実行する必要があります。
$em
->createQueryBuilder()
->update('AppBundle:Contest\Member', 'm')
->innerJoin('m.votes', 'v')
->set('m.total_votes', 'COUNT(v.id)')
->where('m.id = :member')
->setParameter('member', $member->id())
->getQuery()
->execute()
;
または
UPDATE
AppBundle:Contest\Member AS m
INNER JOIN
m.votes v
SET
m.total_votes = COUNT(v.id)
WHERE
m.id = :member
DQL
を通じてDoctrineは断固ステートメクエリに拒否します。
私は間違っていますか?