За InnoDB
Ако specific_field
не е nullable, те са еквивалентни и имат еднаква производителност.
Ако specific_field
е nullable, те не правят едно и също нещо. COUNT(specific_field)
преброява редовете, които имат ненулева стойност на specific_field
. Това изисква разглеждане на стойността на specific_field
за всеки ред. COUNT(*)
просто брои броя на редовете и в този случай може да бъде по-бърз, тъй като не изисква проверка на стойността на specific_field
.
За MyISAM
Има специална оптимизация за следното, така че дори не е необходимо да извлича всички редове:
SELECT COUNT(*) FROM yourtable