द्वारा आदेश MySQL: उदाहरण के साथ DESC और ASC क्वेरी

परिणाम छांटना

SELECT कमांड का उपयोग करके, परिणाम उसी क्रम में लौटाए गए जिस क्रम में रिकॉर्ड डेटाबेस में जोड़े गए थे। यह डिफ़ॉल्ट सॉर्ट ऑर्डर है। इस अनुभाग में, हम देखेंगे कि हम अपने क्वेरी परिणामों को कैसे सॉर्ट कर सकते हैं। सॉर्टिंग बस हमारे क्वेरी परिणामों को एक निर्दिष्ट तरीके से फिर से व्यवस्थित करना है। सॉर्टिंग एक कॉलम या एक से अधिक कॉलम पर की जा सकती है। यह संख्या, स्ट्रिंग्स के साथ-साथ दिनांक डेटा प्रकारों पर भी किया जा सकता है।

ORDER BY क्या है? MySQL?

MySQL द्वारा आदेश डेटा को व्यवस्थित तरीके से सॉर्ट करने के लिए SELECT क्वेरी के साथ संयोजन में उपयोग किया जाता है। MySQL ORDER BY क्लॉज का उपयोग क्वेरी परिणाम सेट को आरोही या अवरोही क्रम में सॉर्ट करने के लिए किया जाता है।

SELECT statement... [WHERE condition | GROUP BY `field_name(s)` HAVING condition] ORDER BY `field_name(s)` [ASC | DESC];

यहाँ

  • "चयन कथन... " नियमित चयन क्वेरी है
  • ” | “ विकल्पों का प्रतिनिधित्व करता है
  • “[WHERE condition | GROUP BY `field_name(s)` HAVING condition” क्वेरी परिणाम सेट को फ़िल्टर करने के लिए उपयोग की जाने वाली वैकल्पिक शर्त है।
  • "द्वारा आदेश" क्वेरी परिणाम सेट सॉर्टिंग निष्पादित करता है
  • “[आरोही | अवरोही]” परिणाम सेट को आरोही या अवरोही क्रम में सॉर्ट करने के लिए उपयोग किया जाने वाला कीवर्ड है। नोट ASC डिफ़ॉल्ट के रूप में उपयोग किया जाता है।
  • DESC और ASC कीवर्ड क्या हैं?

    DESC और ASC कीवर्डASC आरोही का संक्षिप्त रूप है DESC और ASC कीवर्डMySQL DESC अवरोही का संक्षिप्त रूप है
    इसका उपयोग क्वेरी परिणामों को ऊपर से नीचे की शैली में क्रमबद्ध करने के लिए किया जाता है। इसका उपयोग क्वेरी परिणामों को नीचे से ऊपर की शैली में क्रमबद्ध करने के लिए किया जाता है
    दिनांक डेटा प्रकारों पर काम करते समय, सबसे प्रारंभिक दिनांक सूची में सबसे ऊपर दिखाई जाती है। दिनांक प्रकारों पर काम करते समय, नवीनतम दिनांक सूची के शीर्ष पर दिखाई जाती है।
    संख्यात्मक डेटा प्रकारों के साथ काम करते समय, सबसे कम मान सूची के शीर्ष पर दिखाए जाते हैं। संख्यात्मक डेटा प्रकारों के साथ काम करते समय, उच्चतम मान क्वेरी परिणाम सेट के शीर्ष पर दिखाए जाते हैं।
    स्ट्रिंग डेटा प्रकारों के साथ काम करते समय, क्वेरी परिणाम सेट को अक्षर A से शुरू होकर अक्षर Z तक क्रमबद्ध किया जाता है। स्ट्रिंग डेटा प्रकारों के साथ कार्य करते समय, क्वेरी परिणाम सेट को अक्षर Z से शुरू होकर अक्षर A तक क्रमबद्ध किया जाता है।

    SQL DESC और ASC दोनों कीवर्ड का उपयोग SELECT कथन के साथ संयोजन में किया जाता है और MySQL ORDER BY खंड.


    DESC और ASC सिंटैक्स

    SQL DESC sort कीवर्ड का मूल सिंटैक्स निम्नलिखित है।

    SELECT {fieldName(s) | *} FROM tableName(s) [WHERE condition] ORDER BY fieldname(s) ASC /DESC [LIMIT N]

    यहाँ

    • तालिकानाम से {fieldName(s) | *} का चयन करें वह कथन है जिसमें फ़ील्ड और तालिका(एँ) शामिल हैं जिनसे परिणाम सेट प्राप्त किया जाना है।
    • [जहां हालत] वैकल्पिक है लेकिन इसका उपयोग दी गई स्थिति के अनुसार डेटा को फ़िल्टर करने के लिए किया जा सकता है।
    • द्वारा आदेश फ़ील्डनाम अनिवार्य है और यह वह फ़ील्ड है जिस पर सॉर्टिंग की जानी है। MySQL DESC कीवर्ड निर्दिष्ट करता है कि सॉर्टिंग अवरोही क्रम में होनी चाहिए।
    • [सीमा] वैकल्पिक है लेकिन इसका उपयोग क्वेरी परिणाम सेट से लौटाए गए परिणामों की संख्या को सीमित करने के लिए किया जा सकता है।

    उदाहरण:

    आइये अब एक व्यावहारिक उदाहरण देखें –

    SELECT * FROM members;

    उपरोक्त स्क्रिप्ट को निष्पादित करना MySQL myflixdb के विरुद्ध workbench का उपयोग करने से हमें नीचे दिखाए गए निम्नलिखित परिणाम प्राप्त होते हैं।

membership_number full_names gender date_of_birth physical_address postal_address contct_number email
1 Janet Jones Female 21-07-1980 First Street Plot No 4 Private Bag 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Female 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Male 12-07-1989 3rd Street 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Female 14-02-1984 2nd Street 23 NULL NULL NULL
5 Leonard Hofstadter Male NULL Woodcrest NULL 845738767 NULL
6 Sheldon Cooper Male NULL Woodcrest NULL 976736763 NULL
7 Rajesh Koothrappali Male NULL Woodcrest NULL 938867763 NULL
8 Leslie Winkle Male 14-02-1984 Woodcrest NULL 987636553 NULL
9 Howard Wolowitz Male 24-08-1981 SouthPark P.O. Box 4563 987786553


मान लीजिए कि मार्केटिंग विभाग सदस्यों का विवरण जन्म तिथि के घटते क्रम में व्यवस्थित करना चाहता है। इससे उन्हें समय पर जन्मदिन की बधाई भेजने में मदद मिलेगी। हम नीचे दिए गए क्वेरी को निष्पादित करके उक्त सूची प्राप्त कर सकते हैं –

SELECT * FROM members ORDER BY date_of_birth DESC;

उपरोक्त स्क्रिप्ट को निष्पादित करना MySQL myflixdb के विरुद्ध workbench का उपयोग करने से हमें नीचे दिखाए गए निम्नलिखित परिणाम प्राप्त होते हैं।

DESC और ASC उदाहरण

वही प्रश्न बढ़ते क्रम में

सदस्यों से * का चयन करें जन्म तिथि ASC के अनुसार क्रमबद्ध करें

DESC और ASC उदाहरण

नोट: NULL मान का अर्थ है कोई मान नहीं (शून्य या खाली स्ट्रिंग नहीं)। ध्यान दें कि उन्हें किस तरह से क्रमबद्ध किया गया है।

और ज्यादा उदाहरण

आइए निम्नलिखित SQL सॉर्ट बाय स्क्रिप्ट पर विचार करें जो सभी सदस्य रिकॉर्डों को सूचीबद्ध करती है।

SELECT * FROM `members`;

उपरोक्त स्क्रिप्ट को निष्पादित करने से नीचे दिखाए गए निम्नलिखित परिणाम प्राप्त होते हैं।

membership_number full_names gender date_of_birth physical_address postal_address contct_number email
1 Janet Jones Female 21-07-1980 First Street Plot No 4 Private Bag 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Female 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Male 12-07-1989 3rd Street 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Female 14-02-1984 2nd Street 23 NULL NULL NULL
5 Leonard Hofstadter Male NULL Woodcrest NULL 845738767 NULL
6 Sheldon Cooper Male NULL Woodcrest NULL 976736763 NULL
7 Rajesh Koothrappali Male NULL Woodcrest NULL 938867763 NULL
8 Leslie Winkle Male 14-02-1984 Woodcrest NULL 987636553 NULL
9 Howard Wolowitz Male 24-08-1981 SouthPark P.O. Box 4563 987786553 NULL


मान लीजिए कि हम एक सूची प्राप्त करना चाहते हैं जो लिंग फ़ील्ड का उपयोग करके क्वेरी परिणाम सेट को सॉर्ट करती है, तो हम नीचे दिखाए गए स्क्रिप्ट का उपयोग करेंगे।

SELECT * FROM `members` ORDER BY `gender`;
membership_number full_names gender date_of_birth physical_address postal_address contct_number email
1 Janet Jones Female 21-07-1980 First Street Plot No 4 Private Bag 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Female 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
4 Gloria Williams Female 14-02-1984 2nd Street 23 NULL NULL NULL
3 Robert Phil Male 12-07-1989 3rd Street 34 NULL 12345 rm@tstreet.com
5 Leonard Hofstadter Male NULL Woodcrest NULL 845738767 NULL
6 Sheldon Cooper Male NULL Woodcrest NULL 976736763 NULL
7 Rajesh Koothrappali Male NULL Woodcrest NULL 938867763 NULL
8 Leslie Winkle Male 14-02-1984 Woodcrest NULL 987636553 NULL
9 Howard Wolowitz Male 24-08-1981 SouthPark P.O. Box 4563 987786553 NULL

"महिला" सदस्यों को पहले प्रदर्शित किया गया है उसके बाद "पुरुष" सदस्यों को, ऐसा इसलिए है क्योंकि जब ASC या निर्दिष्ट किए बिना ORDER BY DESC क्लॉज का उपयोग किया जाता है MySQL DESC कीवर्ड, डिफ़ॉल्ट रूप से, MySQL क्वेरी परिणाम सेट को आरोही क्रम में सॉर्ट किया गया है।

आइये अब एक उदाहरण देखें जो यह करता है दो कॉलम का उपयोग करके छंटाई; पहला है छाँटे गए in आरोही क्रम डिफ़ॉल्ट रूप से जबकि दूसरा कॉलम छाँटे गए in अवरोही क्रम।

SELECT * FROM `members` ORDER BY `gender`,`date_of_birth` DESC;

उपरोक्त स्क्रिप्ट को निष्पादित करना MySQL myflixdb के विरुद्ध वर्कबेंच का उपयोग करने से निम्नलिखित परिणाम प्राप्त होते हैं।

DESC और ASC उदाहरण

लिंग कॉलम डिफ़ॉल्ट रूप से आरोही क्रम में क्रमबद्ध किया गया था जबकि जन्म तिथि कॉलम स्पष्ट रूप से अवरोही क्रम में क्रमबद्ध किया गया था

हम DESC और ASC का उपयोग क्यों कर सकते हैं?

मान लीजिए कि हम फ्रंट डेस्क से प्रश्नों के उत्तर देने में सहायता के लिए वीडियो लाइब्रेरी के सदस्य के भुगतान इतिहास को प्रिंट करना चाहते हैं, तो क्या यह अधिक तर्कसंगत नहीं होगा कि भुगतानों को हाल के भुगतान से लेकर पहले के भुगतान तक अवरोही कालानुक्रमिक क्रम में प्रिंट किया जाए?

SQL में DESC एक ऐसा कीवर्ड है जो ऐसी स्थितियों में काम आता है। हम एक क्वेरी लिख सकते हैं जो भुगतान तिथि का उपयोग करके सूची को अवरोही क्रम में सॉर्ट करती है।

मान लीजिए कि विपणन विभाग श्रेणी के अनुसार फिल्मों की एक सूची प्राप्त करना चाहता है, जिसका उपयोग सदस्य यह निर्णय लेने के लिए कर सकते हैं कि फिल्में किराये पर लेते समय लाइब्रेरी में कौन सी फिल्में उपलब्ध हैं, तो क्या यह अधिक तर्कसंगत नहीं होगा कि फिल्म श्रेणी के नाम और शीर्षक को आरोही क्रम में व्यवस्थित किया जाए, ताकि सदस्य सूची से जानकारी को शीघ्रता से देख सकें?

ऐसी स्थितियों में ASC कीवर्ड उपयोगी होता है; हम श्रेणी नाम और मूवी शीर्षक के आधार पर मूवी सूची को आरोही क्रम में व्यवस्थित कर सकते हैं।

सारांश

  • क्वेरी परिणामों को क्रमबद्ध करना, क्वेरी परिणाम सेट से लौटाई गई पंक्तियों को आरोही या अवरोही क्रम में पुनः व्यवस्थित करना है।
  • SQL में DESC कीवर्ड का उपयोग क्वेरी परिणाम सेट को अवरोही क्रम में सॉर्ट करने के लिए किया जाता है।
  • ASC कीवर्ड का उपयोग क्वेरी परिणाम सेट को आरोही क्रम में सॉर्ट करने के लिए किया जाता है।
  • DESC और ASC दोनों ORDER BY कीवर्ड के साथ मिलकर काम करते हैं। इन्हें अन्य कीवर्ड के साथ भी इस्तेमाल किया जा सकता है जैसे कहां कारण और सीमा
  • जब कुछ भी स्पष्ट रूप से निर्दिष्ट नहीं किया गया हो तो ORDER BY के लिए डिफ़ॉल्ट ASC है।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: