【发布时间】:2019-08-30 01:52:40
【问题描述】:
我正在尝试使用 Doctrine 从数据库中查询条目数。
$query = $em->createQuery('SELECT COUNT(p.id) FROM AppBundle:Product p where p.live = 1');
$count = $query->getSingleScalarResult();
我想扩展 where 子句并使用“p.supplier == adidas”。
如何将其添加到查询中?
我可以使用
findBy(array("live" => 1, "supplier" => "adidas")) 但我推测 findBy 比直接 Mysql 查询要慢得多。我说的对吗?
【问题讨论】:
-
与 findBy 的区别与这是直接查询(不是,仍然是 DQL)这一事实无关。计数的执行速度比集合检索快。
-
使用 DQL 时,请确保您的整个查询是双引号,并且查询中的字符串是单引号。 DQL 不适用于查询中的双引号字符串。
标签: php mysql database symfony doctrine