栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

PDO :: rowCount VS COUNT(*)

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

PDO :: rowCount VS COUNT(*)

第一个问题:

COUNT()
内部,使用count ,服务器(MySQL)将以不同方式处理请求。

这样做时

COUNT()
,服务器(MySQL)将只分配内存来存储计数结果。

使用

$row=$SQL->rowCount();
服务器时(Apache /
PHP)将处理整个结果集,为所有这些结果分配内存,并将服务器置于获取模式,这涉及许多不同的细节,例如锁定。

请注意,它

PDOStatement::rowCount()
返回受最后一条语句影响的行数,而不是返回的行数。如果关联程序执行的最后一条SQL语句
PDOStatement
是一条
SELECT
语句,则某些数据库可能会返回该语句返回的行数。但是,并非对于所有数据库都可以保证此行为,并且便携式应用程序不应该依赖此行为。

根据我的分析,如果使用

COUNT()
,则该过程将分为MySQL和PHP,而如果使用
$row=$SQL->rowCount();
,则该过程将更多地用于PHP。

因此

COUNT()
在MySQL中速度更快。

第二个问题:

COUNT(*)
比更好
COUNT(id)

说明:

count(*)
mysql中的函数经过优化以查找值的计数。使用通配符意味着它不会获取每一行。它只找到计数。因此,请
count(*)
尽可能使用。

资料来源:

  • PDOStatement :: rowCount
  • MySQL COUNT(*)


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/391647.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号