HAVING क्लॉज का उपयोग SQL सर्वर (Transact-SQL) में GROUP BY क्लॉज के साथ संयोजन के रूप में किया जाता है ताकि लौटाई गई पंक्तियों के समूह को सीमित किया जा सके, केवल तभी जब शर्त पूरी हो।
SQL सर्वर में क्लॉज सिंटैक्स होना
SELECT bieuthuc1, bieuthuc2, … bieuthuc_n,
ham_tong (bieuthuc)
FROM bang
[WHERE dieukien]
GROUP BY bieuthuc1, bieuthuc2, … bieuthuc_n
HAVING dieukie
n_having;
परिवर्तनीय नाम या चर मान
ham_tong
SUM, COUNT, MIN, MAX या AVG जैसे फंक्शन हो सकते हैं।
bieuthuc1, bieuthuc2, . bieuthuc_n
एक्सप्रेशन कुल फ़ंक्शन के भीतर नहीं है और ग्रुप बाय क्लॉज में होना चाहिए।
जहां मरना है
Option. रिकॉर्ड को चुनने के लिए जिन शर्तों को पूरा करना होगा।
मरने वाली_हो रही है
यह एक अतिरिक्त शर्त है जो केवल कुल परिणाम पर लागू होती है ताकि लौटाई गई पंक्तियों के समूहों को सीमित किया जा सके। परिणाम सेट में केवल वे समूह जिनकी शर्तों का मूल्यांकन किया जाता है, TRUE होते हैं।
उदाहरण के लिए - SUM फ़ंक्शन का उपयोग करें
SELECT bophan, SUM(soluong) AS 'Tong so luong'
FROM sanpham
GROUP BY bophan
HAVING SUM (soluong) > 1
00;
उपरोक्त HAVING क्लॉज का उदाहरण विभाग का नाम और कुल मात्रा (संबंधित विभाग में) वापस करने के लिए SUM फ़ंक्शन का उपयोग करता है। HAVING क्लॉज परिणामों को फ़िल्टर करेगा ताकि केवल 100 से अधिक संख्या वाले हिस्से ही वापस आ सकें।
उदाहरण के लिए - COUNT फ़ंक्शन का उपयोग करें
SELECT thanhpho, COUNT (*) AS 'So nhanvien'
FROM nhanvien
WHERE bang = 'California'
GROUP BY thanhpho
HAVING COUN
T (*)> 20;
यह उदाहरण कैलिफोर्निया में वर्तमान में शहर और कर्मचारियों (उस शहर में) की संख्या को दर्शाता है। HAVING क्लॉज केवल 20 से अधिक कर्मचारियों वाले शहरों को वापस करने के लिए फ़िल्टर करेगा।
उदाहरण के लिए - MIN फ़ंक्शन का उपयोग करें
SELECTbophan, MIN (luong) AS 'Luong thap nhat'
FROM nhanvien
GROUP BY bophan
HAVING MIN
(luong)> = 50000;
इस उदाहरण में, लौटाया गया परिणाम प्रत्येक विभाग का नाम और प्रत्येक विभाग में न्यूनतम वेतन है। HAVING क्लॉज केवल 50,000 डॉलर से अधिक या उसके बराबर न्यूनतम वेतन वाले हिस्से लौटाएगा।
उदाहरण के लिए - MAX फ़ंक्शन का उपयोग करें
SELECT ho, MAX (luong) AS 'Luong cao nhat'
FROM nhanvien
GROUP BY bophan
HAVING MA
X (luong)> 34000;
इस अंतिम उदाहरण में, परिणाम कर्मचारी का अंतिम नाम और उस परिवार के मूल्य के लिए अधिकतम वेतन है। HAVING क्लॉज केवल उन मानों को सीमित करता है जिनका अधिकतम वेतन $34,000 से अधिक है।