我有两种不同的方法来检查现有条目。
方法1
SQL:SELECT COUNT(*) FROM ...
PHP:
$result = fetch_row();
if($result[0] > 0) // entry found
方法2
SQL:SELECT 1 FROM ... LIMIT 1
PHP:
$result = num_rows();
if($result > 0) // entry found
在绩效方面做正确的方法是什么?
答案 0 :(得分:1)
两者都是正确和良好的。但是我会建议第二,因为你限制了1条记录,当你得到记录时它会停止,而在你开始计算所有记录时。
当您需要查找有多少记录时,首先“计数*”非常重要。
答案 1 :(得分:1)
当有许多行与您的查询匹配时,后者更有效,因为在第一种情况下,MySQL必须找到它们以返回正确的计数值,而在第二种情况下,它将在找到第一个后停止搜索。 / p>