Wol*_*ang 9 mysql performance
对于InnoDB存储,最好是计算记录总数
使用mysql_num_rows上
mysql_num_rows
select * from tbl where pk = 1
或者
获取数组并从中检索"total"值
select count(*) as total from tbl where pk = 1
?
T.J*_*der 13
绝对是后者.它可以直接从PK索引中获取值,而前者几乎肯定需要进行表扫描(除非每一列都是索引的一部分;即使这样,它也必须从所有索引中获取值).然后,根据您连接到数据库的方式,有大量的数据传输只是为了获得计数.
explain可以帮到这里.在这种情况下,它会告诉您选择被优化掉了.
explain
归档时间:
15 年,11 月 前
查看次数:
5559 次
最近记录:
12 年,6 月 前