数据库访问 · 第 10 题,共 12 题

为了做概览,只需统计页面 12 上的条目数量。哪种实现最高效?

有 1 个正确答案。 中等

显示答案

答案

  • D $qb->count('uid')->from('tx_myext_item')->where($qb->expr()->eq('pid', $qb->createNamedParameter(12, Connection::PARAM_INT)))->executeQuery()->fetchOne()

解析

count() 会把 SELECT 部分替换为 COUNT(),数据库只返回一个数字,由 fetchOne() 读取。加载所有行再在 PHP 中计数会耗费内存和时间。rowCount() 对 SELECT 并非在所有数据库系统上都可靠,而 select('COUNT(*)') 会把该表达式当作列名加引号。

认证与考试

下一个考试是什么?

已有 19 项考试可以练习,21 项正在投票中。查看所有认证及官方信息,投出你的一票,或推荐你的考试。

查看全部认证