Middle
175
Millised on erinevused WHERE ja HAVING operaatorite vahel SQL-is?
Vastus AI-lt
sobes.tech AI
WHERE filtrlash satrlar oldin guruhlash (GROUP BY), va HAVING guruhlarni keyin filtrlash uchun ishlatiladi. WHERE ustunlarni ishlatishi mumkin, ular SELECT-da bo'lmagan, HAVING odatda agregat funksiyalarini yoki GROUP BY-da mavjud ustunlarni ishlatadi.
Misol:
SELECT
category,
COUNT(*) as total_items
FROM
products
WHERE
price > 10 // Mahsulotlarni guruhlashdan oldin filtrlash
GROUP BY
category
HAVING
COUNT(*) > 5; // 5 dan ortiq mahsulotga ega bo'lgan kategoriyalarni filtrlash
Taqqoslash:
| Operator | Maqsad | Qo'llaniladi | Agregat funksiyalarni ishlatish mumkinmi | GROUP BY bilan tartib |
|---|---|---|---|---|
WHERE |
Satrlarni filtrlash | Yakka satrlar | Yo'q | Oldin |
HAVING |
Guruhlarni filtrlash | Guruhlar | Ha | Keyin |