Junior — Middle
SQL sorguları ile çalışırken HAVING ve WHERE koşulları arasındaki fark nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
SQL'de WHERE ve HAVING arasındaki temel fark:
- WHERE, satırları gruplamadan önce (GROUP BY) filtreler. Tabloya ait bireysel kayıtlara uygulanır.
- HAVING, gruplamadan sonra grupları filtreler. Toplam fonksiyonları (örneğin, COUNT, SUM) üzerindeki koşullar için kullanılır.
Örnek:
SELECT departman, COUNT(*) as çalışan_sayısı
FROM çalışanlar
WHERE maaş > 50000 -- maaşı 50000'den yüksek olan çalışanları filtrele
GROUP BY departman
HAVING COUNT(*) > 10 -- 10'dan fazla çalışanı olan departmanları seç
Burada WHERE, gruplama için satırları seçer, HAVING ise zaten gruplanmış verileri filtreler.