我在mysql中有一个列,我需要在symfony应用程序中的列中检索表中总记录的大小。
这是表格的结构,我想在agrees列中获取记录的总大小,所以在这种情况下它应该返回2:
id | agrees | disjoint |
1 | 1 | 0
2 | 1 | null
下面是我的方法,但它只是从表中提取所有内容,但我无法计算同意列的大小
$restresults = $this->getDoctrine()->getRepository('xxxBundle:Entity')->findAll();
$data = array();
foreach ($restresults as $restresult) {
array_push($data, $this->serialize($restresult));
}
$response = new Response(json_encode($data), 200);
$response->headers->set('Content-Type', 'application/json');
请问如何获取列中记录的总大小?
答案 0 :(得分:0)
如果您需要表格中的count元素,请使用:
$qb = $entityManager->createQueryBuilder();
$qb->select('count(e.id)');
$qb->from('xxxBundle:Entity','e');
$count = $qb->getQuery()->getSingleScalarResult();
如果您需要总和列,请使用
$qb->select('sum(e.agrees)');
http://docs.doctrine-project.org/en/latest/reference/query-builder.html
中的更多信息