Middle
Wat werkt sneller: count(*) of count(kolom_naam)?
sobes.tech AI
Antwoord van AI
In de meeste databasebeheersystemen (DBMS) werken count(*) en count(kolom_naam) volgens verschillende logica:
count(*)telt alle rijen, inclusief die waar de waarden in kolommen NULL kunnen zijn.count(kolom_naam)telt alleen de rijen waar de waarde in de opgegeven kolom niet NULL is.
Qua prestaties is count(*) meestal sneller of even snel, omdat de database geen waarden in een specifieke kolom hoeft te controleren, maar gewoon rijen telt. In sommige geoptimaliseerde engines kan count(*) gebruik maken van metadata of indexen voor snelle telling.
Voorbeeld:
SELECT count(*) FROM users; -- telt alle rijen
SELECT count(email) FROM users; -- telt alleen rijen waar email niet NULL is
Kortom: als je alleen de totale rijtelling nodig hebt, is het beter om count(*) te gebruiken — dit is meestal sneller en nauwkeuriger.