सारांश :इस ट्यूटोरियल में, आप सीखेंगे कि SQLite HAVING
का उपयोग कैसे करें किसी समूह या समुच्चय के लिए फ़िल्टर शर्त निर्दिष्ट करने के लिए खंड।
SQLite का परिचय HAVING
खंड
SQLite HAVING
क्लॉज SELECT
. का एक वैकल्पिक क्लॉज है बयान। HAVING
खंड किसी समूह के लिए खोज शर्त निर्दिष्ट करता है।
आप अक्सर HAVING
. का उपयोग करते हैं GROUP BY
. के साथ क्लॉज खंड। GROUP BY
क्लॉज पंक्तियों के एक समूह को सारांश पंक्तियों या समूहों के समूह में समूहित करता है। फिर HAVING
क्लॉज एक निर्दिष्ट शर्त के आधार पर समूहों को फ़िल्टर करता है।
यदि आप HAVING
. का उपयोग करते हैं खंड, आपको GROUP BY
. अवश्य शामिल करना चाहिए खंड; अन्यथा, आपको निम्न त्रुटि मिलेगी:
Error: a GROUP BY clause is required before HAVING
Code language: JavaScript (javascript)
ध्यान दें कि HAVING
क्लॉज GROUP BY
. के बाद लागू होता है खंड, जबकि WHERE
क्लॉज GROUP BY
. से पहले लागू होता है खंड।
निम्नलिखित HAVING
. के सिंटैक्स को दर्शाता है खंड:
SELECT
column_1,
column_2,
aggregate_function (column_3)
FROM
table
GROUP BY
column_1,
column_2
HAVING
search_condition;
Code language: SQL (Structured Query Language) (sql)
इस सिंटैक्स में, HAVING
क्लॉज search_condition
का मूल्यांकन करता है प्रत्येक समूह के लिए एक बूलियन अभिव्यक्ति के रूप में। मूल्यांकन सही होने पर ही इसमें अंतिम परिणाम सेट में एक समूह शामिल होता है।
SQLite HAVING
खंड उदाहरण
हम tracks
. का उपयोग करेंगे प्रदर्शन के लिए नमूना डेटाबेस में तालिका।
प्रत्येक एल्बम के लिए ट्रैक की संख्या ज्ञात करने के लिए, आप GROUP BY
. का उपयोग करते हैं खंड इस प्रकार है:
SELECT
albumid,
COUNT(trackid)
FROM
tracks
GROUP BY
albumid;
Code language: SQL (Structured Query Language) (sql)
इसे आज़माएं
आईडी 1 वाले एल्बम के लिए ट्रैक की संख्या जानने के लिए, हम एक HAVING
. जोड़ते हैं निम्नलिखित कथन का खंड:
SELECT
albumid,
COUNT(trackid)
FROM
tracks
GROUP BY
albumid
HAVING albumid = 1;
इसे आज़माएं
हमने AlbumId
. का उल्लेख किया है HAVING
. में कॉलम खंड।
18 और 20 के बीच ट्रैक की संख्या वाले एल्बम खोजने के लिए, आप HAVING
में एग्रीगेट फ़ंक्शन का उपयोग करते हैं खंड जैसा कि निम्नलिखित कथन में दिखाया गया है:
SELECT
albumid,
COUNT(trackid)
FROM
tracks
GROUP BY
albumid
HAVING
COUNT(albumid) BETWEEN 18 AND 20
ORDER BY albumid;
Code language: SQL (Structured Query Language) (sql)
इसे आज़माएं
SQLite HAVING
INNER JOIN
के साथ क्लॉज उदाहरण
निम्नलिखित कथन tracks
से डेटा की क्वेरी करता है और albums
60,000,000 मिलीसेकंड से अधिक की कुल लंबाई वाले एल्बम खोजने के लिए इनर जॉइन का उपयोग करने वाली तालिकाएँ।
SELECT
tracks.AlbumId,
title,
SUM(Milliseconds) AS length
FROM
tracks
INNER JOIN albums ON albums.AlbumId = tracks.AlbumId
GROUP BY
tracks.AlbumId
HAVING
length > 60000000;
Code language: SQL (Structured Query Language) (sql)
इसे आज़माएं
इस ट्यूटोरियल में, आपने सीखा है कि SQLite HAVING
. का उपयोग कैसे किया जाता है समूह के लिए खोज शर्त निर्दिष्ट करने के लिए खंड।