mysqli_num_rows是否需要花费足够的时间来运行查询本身?
$query = Select * FROM table Where X = 'Y'
mysqli_num_rows($query)
mysqli_query($con, $query)
我的假设是num行会更快,但是如果它与查询进行相同的比较又是如何以及为什么呢?
答案 0 :(得分:1)
mysqli_num_rows()
不执行任何查询。您仍然需要执行查询/语句,然后只有您的mysqli_result对象具有此属性。
mysqli_num_rows()
并没有真正执行任何操作。它只是从对象读取整数。当mysqli实例化mysqli_result对象时,完成对象中的行计数。
事实是,此属性/函数在大多数情况下是无用的。要获取数据库中的行数,您需要运行SELECT COUNT(*)
。这绝对比获取所有结果并计数行要快。从MySQL发送到PHP的数据越少越好。