Junior — Middle
SQL sorğuları ilə işləyərkən WHERE və HAVING şərtləri arasındakı fərq nədir?
sobes.tech Süni İntellekt
AI-dan cavab
SQL-də WHERE və HAVING şərtləri məlumatları filtrləmək üçün istifadə olunur, lakin onlar sorğunun emalının müxtəlif mərhələlərində tətbiq olunur:
WHEREsətirləri qrup və toplama əməliyyatlarından əvvəl filtrləyir. O, sorğuda istifadə olunacaq məlumat dəstini məhdudlaşdırır.HAVINGqrupları toplama funksiyaları tətbiq edildikdən sonra filtrləyir (məsələn,SUM,COUNT,AVG). Bu, toplama nəticələrini məhdudlaşdırmaq üçün istifadə olunur.
Nümunə:
SELECT şöbə, COUNT(*) kimi işçi_sayı
FROM işçilər
WHERE maaş > 50000 -- maaşı 50000-dən çox olan işçiləri filtrləyir
GROUP BY şöbə
HAVING COUNT(*) > 10; -- 10-dan çox işçisi olan şöbələri seçir
Burada, WHERE maaşı 50000-dən çox olan işçiləri seçir, və HAVING bu kriteriyaya cavab verən şöbələri filtrləyir.