Middle
Hangi daha hızlı çalışır: count(*) veya count(sütun_adi)?
sobes.tech yapay zeka
AI'dan gelen yanıt
Çoğu veritabanı yönetim sisteminde (count(*) ve count(alan_adi)) farklı mantıklarla çalışır:
count(*)tüm satırları sayar, sütunlarda NULL olabilecek değerler dahil.count(alan_adi)sadece belirtilen sütundaki NULL olmayan değerleri sayar.
Performans açısından, count(*) genellikle daha hızlıdır veya en azından aynı hızdadır, çünkü veritabanı belirli bir sütundaki değerleri kontrol etmek zorunda kalmaz, sadece satırları sayar. Bazı optimize edilmiş motorlarda, count(*) hızlı sayım için meta verileri veya indeksleri kullanabilir.
Örnek:
SELECT count(*) FROM users; -- tüm satırları sayar
SELECT count(email) FROM users; -- sadece email değeri NULL olmayan satırları sayar
Sonuç olarak: sadece toplam satır sayısına ihtiyacınız varsa, count(*) kullanmak daha iyidir — bu genellikle daha hızlı ve daha doğrudur.