我想知道通过select COUNT(*) from table
获取数据和mysqli_num_rows($ofquery)
(在php中)获取行数之间的区别吗?
我尝试过两种方式并且效果很好。但方法更快?
答案 0 :(得分:0)
使用COUNT
,服务器将在内部以不同方式处理请求。
执行COUNT
时,服务器只会分配内存来存储计数结果。
使用mysqli_num_rows
时,服务器将处理整个结果集,为所有结果分配内存,并将服务器置于提取模式,这涉及许多不同的细节,例如锁定。
将其视为以下伪方案:
1)嘿,教室里有多少人? (计数)2)嘿,给我一份教室里所有人的清单,......我会自己计算人数(mysqli_num_rows)
count
最好是mysqli_num_rows