我想知道如何计算学说库中实体的所有记录
我找到了这个解决方案但不确定这是否合适:
public function findAllCounted()
{
return $this->getEntityManager()
->createQuery('SELECT COUNT(a.id) FROM KSRArticleBundle:Article a')
->getSingleScalarResult();
}
最诚挚的问候, 博多
答案 0 :(得分:11)
您无需依赖特定字段,因此这样做:
SELECT COUNT(a) FROM KSRArticleBundle:Article a
答案 1 :(得分:5)
只是为了记录,通常最好依靠id:
SELECT COUNT(a.id) FROM KSRArticleBundle:Article a
好一点
答案 2 :(得分:0)
SQL也允许这样:
SELECT COUNT(1) FROM KSRArticleBundle:Article a
通过这种方式,数据库甚至不必从表中获取任何数据,这甚至更快。字面意思是:为每条记录选择常数“1”的数字。精心设计的数据库服务器的速度小,而且在编写时不必记住有关该表的任何内容。
答案 3 :(得分:0)
查询的结果是一个总是位置为零且参数为“1”
的数组$recordnumber= $number[0]["1"];
表名应该等于实体名称并以大写字母
开头