SQLite
 sql >> डेटाबेस >  >> RDS >> SQLite

SQLite होने

सारांश :इस ट्यूटोरियल में, आप सीखेंगे कि 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 HAVINGCode 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 . का उपयोग कैसे किया जाता है समूह के लिए खोज शर्त निर्दिष्ट करने के लिए खंड।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. डेटाबेस लॉक नहीं है! एंड्रॉइड में

  2. SQLite में किसी विशेष दिनांक/समय के बाद से सेकंड की संख्या की गणना करें

  3. ऑफ़लाइन एप्लिकेशन के लिए बैकअप बनाने के सर्वोत्तम तरीके?

  4. वास्तविक उपयोग और SQLite दस्तावेज़ीकरण के संदर्भ में EnableWriteAheadLogging कितना सुरक्षित है?

  5. SQLite में AUTOINCREMENT कैसे काम करता है