एसक्यूएल में एंबेडेड नंबरों के साथ स्ट्रिंग कॉलम को सॉर्ट करना
एसक्यूएल में, विशिष्ट तकनीकों का उपयोग करके संख्याओं वाले स्ट्रिंग कॉलम को सॉर्ट करना संभव है। यह तब उपयोगी हो सकता है जब MySQL जैसे डेटाबेस का प्राकृतिक सॉर्टिंग एल्गोरिदम वांछित परिणाम नहीं देता है।
संख्याओं के साथ स्ट्रिंग कॉलम की कस्टम सॉर्टिंग प्राप्त करने के लिए, कई तरीकों को नियोजित किया जा सकता है:
कास्ट और सबस्ट्रिंग का उपयोग करना:
SELECT *
FROM table
ORDER BY CAST(SUBSTRING(column,LOCATE(' ',column) 1) AS SIGNED)
यह तकनीक कॉलम को दो भागों में तोड़ देती है: स्पेस से पहले उपसर्ग और उसके बाद की संख्या। तुलना के लिए संख्या को एक संख्यात्मक प्रकार (इस मामले में, हस्ताक्षरित) में डाला जाता है।
SUBSTRING_INDEX का उपयोग करना:
ORDER BY SUBSTRING_INDEX(st, " ", 1) ASC, CAST(SUBSTRING_INDEX(st, " ", -1) AS SIGNED)
यह दृष्टिकोण उपसर्ग और संख्या घटकों को निकालने के लिए SUBSTRING_INDEX फ़ंक्शन का उपयोग करता है। इसके बाद इसे पहले उपसर्ग और फिर परिवर्तित संख्या के आधार पर क्रमबद्ध किया जाता है।
नोट: यदि कॉलम पैटर्न "WORD_space_NUMBER" से भिन्न है, तो एक अलग दृष्टिकोण आवश्यक हो सकता है।
उदाहरण:
नमूना डेटा | प्राकृतिक छँटाई | कस्टम छँटाई |
---|---|---|
a 1, a 12, a 6, a 11 | ए 1, ए 12, ए 2, ए 3 | ए 1, ए 2, ए 3, ए 12 |
बी 1, बी 12, बी 6, बी 11 | बी 1, बी 12, बी 2, बी 3 | बी 1, बी 2, बी 3, बी 12 |
इन तकनीकों को नियोजित करके, अनुकूलित तरीके से एम्बेडेड संख्याओं के साथ स्ट्रिंग कॉलम को सॉर्ट करना संभव है, यह सुनिश्चित करते हुए कि परिणाम विशिष्ट एप्लिकेशन आवश्यकताओं के साथ संरेखित हों।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3