Middle
Čo funguje rýchlejšie: count(*) alebo count(názov_stĺpca)?
sobes.tech AI
Odpoveď od AI
U većini sustava za upravljanje bazama podataka (DBMS), count(*) i count(naziv_kolone) rade s različitom logikom:
count(*)броји све редове, укључујући оне у којима вредности у колонама могу бити NULL.count(naziv_kolone)броји само оне редове у којима вредност у наведеној колони није NULL.
Што се тиче перформанси, count(*) је обично бржи или бар исто тако брз, јер DBMS не мора да проверава вредности у одређеној колони, већ само броји редове. У неким оптимизованим моторима, count(*) може користити метаподатке или индексе за брзо бројање.
Пример:
SELECT count(*) FROM users; -- броји све редове
SELECT count(email) FROM users; -- броји само редове где email није NULL
Укратко: ако вам је потребан само укупни број редова, боље је користити count(*) — то је обично брже и прецизније.