Лучше использовать DQL для получения количества столбцов или получения коллекции, а затем количества? - PullRequest
15 голосов
/ 21 января 2011

Я совершенно уверен, что DQL будет подходить, но мне интересно, если Doctrine, я использую Doctrine 2, каким-то образом возвращает счетчик строк. Я не буду использовать сами строки, я просто хочу счет.

Ответы [ 2 ]

30 голосов
/ 22 января 2011

Я новичок в Doctrine2, но похоже, что вы можете просто сделать это:

$query = $em->createQuery('SELECT COUNT(u.id) FROM Entities\User u');
$count = $query->getSingleScalarResult();

Источник (Использование Агрегатных функций): http://www.doctrine -project.org / docs / orm / 2.0 / en / reference / dql-doctrine-query-language.html # dql-select-examples

Разрешенные агрегатные функции: http://www.doctrine -project.org / docs / orm / 2.0 / en / reference / dql-doctrine-query-language.html # aggregate-functions

0 голосов
/ 03 марта 2015

Вот еще одна интересная точка зрения на использование агрегированных функций в DQL

.

http://doctrine -orm.readthedocs.org / ен / последний / кулинарной / агрегатно-fields.html

Может быть, вы бы избежали создания определенного запроса для получения совокупного значения. В этом случае агрегированные поля являются хорошей альтернативой.

...