SQLite में एक group_concat()
है फ़ंक्शन जो आपको एक कॉलम के लिए लौटाए गए कई परिणामों को एक में संयोजित करने की अनुमति देता है।
इसे कभी-कभी "स्ट्रिंग एग्रीगेशन" के रूप में जाना जाता है।
उदाहरण के लिए, डेटाबेस को क्वेरी करते समय, प्रत्येक कॉलम के मान आउटपुट को एक नई पंक्ति में रखने के बजाय, आप group_concat()
का उपयोग कर सकते हैं उन्हें अल्पविराम से अलग सूची के रूप में आउटपुट करने के लिए।
सिंटैक्स
आप इस फ़ंक्शन का उपयोग निम्न में से किसी एक तरीके से कर सकते हैं:
group_concat(X)
group_concat(X,Y)
दूसरे शब्दों में, group_concat()
फ़ंक्शन का उपयोग या तो एक तर्क या दो के साथ किया जा सकता है।
दूसरा तर्क एक चरित्र को विभाजक के रूप में उपयोग करने के लिए निर्दिष्ट करता है। यदि आप इसे निर्दिष्ट नहीं करते हैं, तो एक अल्पविराम (,
) विभाजक के रूप में उपयोग किया जाएगा।
एक तर्क के साथ उदाहरण
यहां group_concat()
को कॉल करने का एक उदाहरण दिया गया है एक तर्क के साथ।
SELECT group_concat(FirstName)
FROM Employee;
परिणाम:
Andrew,Nancy,Jane,Margaret,Steve,Michael,Robert,Laura
अगर मैंने group_concat()
का इस्तेमाल नहीं किया है इस कॉलम को जोड़ने के लिए, परिणाम इस तरह दिखाई देंगे:
SELECT FirstName
FROM Employee;
परिणाम:
Andrew Nancy Jane Margaret Steve Michael Robert Laura
कस्टम विभाजक का उपयोग करें
जैसा कि उल्लेख किया गया है, आपके पास यह निर्दिष्ट करने का विकल्प है कि विभाजक के रूप में किस वर्ण का उपयोग करना है।
यहां पाइप चिह्न निर्दिष्ट करने का एक उदाहरण दिया गया है (|
) विभाजक के रूप में।
SELECT group_concat(FirstName, '|')
FROM Employee;
परिणाम:
Andrew|Nancy|Jane|Margaret|Steve|Michael|Robert|Laura
यहाँ एक और है जो अल्पविराम का उपयोग करता है, लेकिन अल्पविराम के दाईं ओर एक स्थान भी जोड़ता है।
SELECT group_concat(FirstName, ', ')
FROM Employee;
परिणाम:
Andrew,Nancy,Jane,Margaret,Steve,Michael,Robert,Laura
परिणामों को समूहीकृत करें
आप कई कॉलम वापस कर सकते हैं और GROUP BY
. का उपयोग कर सकते हैं उन्हें उचित रूप से समूहित करने के लिए खंड।
यहाँ एक उदाहरण है।
SELECT ArtistId, group_concat(AlbumName)
FROM Albums
GROUP BY ArtistId LIMIT 10;
परिणाम:
ArtistId group_concat(AlbumName)
-------- --------------------------------------------------------------------------
1 Powerslave,Somewhere in Time,Piece of Mind,Killers,No Prayer for the Dying
2 Powerage
3 All Night Wrong,The Sixteen Men of Tain
4 Big Swing Face
5 Ziltoid the Omniscient,Casualties of Cool,Epicloud
6 Singing Down the Lane
7 Long Lost Suitcase,Praise and Blame,Along Came Jones
9 No Sound Without Silence
12 Blue Night,Eternity,Scandinavia