Middle
WHERE va HAVING o'rtasidagi farq nima?
sobes.tech AI
AIdan javob
SQLda WHERE operatori satrlarni guruhlashdan oldin filtrlash uchun ishlatiladi, ya'ni u so'rovda qatnashadigan ma'lumotlar to'plamini cheklaydi.
HAVING esa, allaqachon guruhlangan ma'lumotlarni filtrlash uchun ishlatiladi, ya'ni agregat funksiyalar va guruhlashdan so'ng.
Misol:
SELECT department, COUNT(*) as employee_count
FROM employees
WHERE salary > 50000 -- maoshi 50000 dan yuqori bo'lgan xodimlarni filtrlash
GROUP BY department
HAVING COUNT(*) > 10 -- 10 dan ortiq xodim bo'lgan bo'limlarni tanlash
Bu yerda, avvalo WHERE 50000 dan yuqori maoshli satrlarni tanlaydi, so'ngra ma'lumotlar bo'limlar bo'yicha guruhlanadi va HAVING guruhlarni xodimlar soniga qarab filtrlash uchun ishlatiladi.