106
GB
What is the difference between WHERE and HAVING clauses in SQL?
IN
SQL में WHERE और HAVING क्लॉज के बीच क्या अंतर है?
A
They are identical
वे समान हैं
B
WHERE applies to all tables; HAVING applies only to subqueries
WHERE सभी तालिकाओं पर लागू होता है; HAVING केवल उपश्रेणियों पर लागू होता है
C
WHERE filters individual rows BEFORE grouping; HAVING filters groups AFTER GROUP BY and aggregation - HAVING can reference aggregate functions, WHERE cannot
जहां समूहीकरण से पहले अलग-अलग पंक्तियों को फ़िल्टर किया जाता है; GROUP BY और एकत्रीकरण के बाद फिल्टर समूहों का होना - HAVING समग्र कार्यों का संदर्भ दे सकता है, जबकि नहीं
D
WHERE works with aggregate functions; HAVING does not
जहां समग्र कार्यों के साथ काम करता है; होना नहीं है
✅ Correct Answer:
💡 Explanation / व्याख्या
Explanation (English)
WHERE: applied before GROUP BY, filters individual rows based on non-aggregated conditions. HAVING: applied after GROUP BY, filters groups based on aggregate function results (COUNT, SUM, AVG, etc.). You CANNOT use aggregate functions in WHERE.
व्याख्या (हिन्दी)
कहां: ग्रुप बाय से पहले लागू किया गया, गैर-एकत्रित स्थितियों के आधार पर अलग-अलग पंक्तियों को फ़िल्टर करता है। HAVING: ग्रुप BY के बाद लागू किया गया, समग्र फ़ंक्शन परिणामों (COUNT, SUM, AVG, आदि) के आधार पर समूहों को फ़िल्टर करता है। आप WHERE में समग्र फ़ंक्शंस का उपयोग नहीं कर सकते।