Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> SQL

SQL Concatenate फ़ंक्शन का उपयोग करके क्वेरी कैसे बनाएं

प्रश्नों के साथ काम करते समय, कभी-कभी हमें अपने डेटाबेस से कच्चा डेटा लेने की आवश्यकता होती है और इसे कहीं और उपयोग करने के लिए एक अलग तरीके से पुन:स्वरूपित करना पड़ता है। इस लेख में, हम अपने प्रश्नों में स्ट्रिंग प्रकारों के साथ काम करने में मदद करने के लिए MySQL में कुछ कार्यों को देखते हैं।

स्कीमा बनाना

यह खंड इस पोस्ट में शामिल SQL अवधारणाओं को स्पष्ट करने के लिए एक त्वरित स्कीमा तैयार करने के लिए समर्पित है। हम कार्यों के लिए MySQL का उपयोग करते हैं - मैं सिंटैक्स का उपयोग करने और अपनी खोज क्वेरी चलाने के लिए SQL Fiddle का उपयोग करने की सलाह देता हूं। वहां, आप अन्य रिलेशनल डेटाबेस में भी अपने प्रश्नों का परीक्षण कर सकते हैं।

तालिका बनाएं और मान डालें

 टेबल जन्मदिन बनाएं (नाम वर्कर (200) न्यूल नहीं, जन्मदिन वर्चर (10) न्यूल नहीं); INSERT INTO जन्मदिन (नाम, जन्मदिन) VALUES("Jane", "11/20/1993"); INSERT INTO जन्मदिन (नाम, जन्मदिन) VALUES ("डंकन", "01/15/1987"); जन्मदिन में सम्मिलित करें ( नाम, जन्मदिन) VALUES("Lucas", "07/21/1996"); INSERT INTO जन्मदिन (नाम, जन्मदिन) VALUES("Alexa", "12/31/1988");

शीर्ष चार पंक्तियाँ तालिका "जन्मदिन" बनाती हैं कॉलम "नाम" और "जन्मदिन" के साथ। शेष डेटाबेस में मान सम्मिलित करता है। हम इसका उपयोग तब करते हैं जब हम अपने क्वेरी स्टेटमेंट बनाते हैं।

अगर हम अपनी टेबल पर एक बेसिक क्वेरी चलाते हैं, तो क्वेरी स्टेटमेंट और परिणाम इस तरह दिखाई देंगे:

नाम चुनें, जन्मदिन से जन्मदिन;

परिणाम:

नाम जन्मदिन
क्रिस 11/20/1993
डंकन 01/15/1987
लुकास 07/21/1996
एलेक्सा 12/31/1988

क्वेरी स्टेटमेंट बनाना

CONCAT()

CONCAT() फ़ंक्शन तर्कों को एक स्ट्रिंग में शामिल करने के बाद परिणाम देता है। कम से कम एक तर्क है, लेकिन कई कार्य हो सकते हैं। फ़ंक्शन में तर्क निम्न में से कोई एक हो सकते हैं:

  • बाइनरी स्ट्रिंग - यदि तर्कों में से कोई एक बाइनरी स्ट्रिंग है, तो वापसी मान एक बाइनरी स्ट्रिंग है।
  • गैर बाइनरी स्ट्रिंग - एक विशिष्ट स्ट्रिंग मान। यदि सभी तर्क गैर-बाइनरी स्ट्रिंग मान हैं, CONCAT() एक गैर-बाइनरी स्ट्रिंग मान देता है।
  • संख्यात्मक - यदि एक इनपुट संख्यात्मक प्रकार का है, तो इसे अन्य तर्कों के साथ जुड़ने से पहले एक गैर-बाइनरी स्ट्रिंग के लिए मजबूर किया जाता है।
  • शून्य - यदि NULL मान हैं, तो उन मानों को केवल अनदेखा कर दिया जाता है।

औपचारिक वाक्य रचना इस प्रकार है:

81% प्रतिभागियों ने कहा कि बूटकैंप में भाग लेने के बाद उन्हें अपनी तकनीकी नौकरी की संभावनाओं के बारे में अधिक आत्मविश्वास महसूस हुआ। आज ही एक बूटकैंप से मिलान करें।

बूटकैंप शुरू करने से लेकर अपनी पहली नौकरी खोजने तक, औसत बूटकैंप ग्रेड ने करियर संक्रमण में छह महीने से भी कम समय बिताया।

CONCAT( <str value 1>, <str value 2>, [ … <str value N> ]);

हम CONCAT कीवर्ड का उपयोग कोष्ठक की एक जोड़ी के साथ यह इंगित करने के लिए करते हैं कि यह एक फ़ंक्शन है। कोष्ठक के अंदर एन इनपुट स्ट्रिंग है। यहाँ यह MySQL का उपयोग करते हुए दिखता है:

<पूर्व>जन्मदिनों से परिणाम के रूप में CONCAT(नाम, " ", जन्मदिन) चुनें;

हम नाम, एक स्पेस चार, और जन्मदिन के संयोजन से वापसी मूल्य "चयन" करते हैं और इसे "परिणाम" नाम देते हैं।

इस क्वेरी का परिणाम है:

परिणाम
क्रिस 11/20/1993
डंकन 01/15/1987
लुकास 07/21/1996
एलेक्सा 12/31/1988

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

जरूरी नहीं कि कोई सही या गलत उत्तर हो। यह इस बारे में है कि आप अपने आवेदन में इस डेटा पर कैसे भरोसा करते हैं।

CONCAT_WS()

CONCAT_WS() फ़ंक्शन CONCAT() के समान है फ़ंक्शन, हालांकि, एक आवश्यक पहला तर्क है जो मूल CONCAT() . में नहीं है समारोह। यह तर्क विभाजक है जो फ़ंक्शन के बाकी सभी तर्कों के बीच में जाता है। CONCAT() . के बाकी नियम लागू।

औपचारिक वाक्य रचना इस प्रकार है:

CONCAT_WS(<separator>, <str value 1>, <str value 2>, [ … <str value N> ]);

हम CONCAT_WS() . का उपयोग करते हैं कोष्ठक की एक जोड़ी के साथ कीवर्ड यह इंगित करने के लिए कि यह एक फ़ंक्शन है। कोष्ठक के अंदर पहला तर्क विभाजक है जो प्रत्येक इनपुट स्ट्रिंग के बीच जाता है। बाकी तर्क वे तार हैं जिन्हें हम एक साथ जोड़ते हैं। यहाँ MySQL का उपयोग करके एक नज़र है:

<पूर्व>जन्मदिनों से परिणाम के रूप में CONCAT_WS(", ", नाम, जन्मदिन) चुनें;

परिणाम दूसरे तर्कों में से प्रत्येक के बीच पहले तर्क के साथ स्ट्रिंग संयोजन है।

परिणाम
क्रिस, 11/20/1993
डंकन 01/15/1987
लुकास 07/21/1996
एलेक्सा 12/31/1988

जैसे CONCAT() फ़ंक्शन, CONCAT_WS() फ़ंक्शन केवल एक कॉलम देता है, जिसका नाम परिणाम है, जहां मान इनपुट स्ट्रिंग है जो विभाजक वर्ण के साथ जुड़ा हुआ है।

निष्कर्ष

इस लेख में, हम SQL CONCAT() . को कवर करते हैं और CONCAT_WS() कार्य करता है क्योंकि वे MySQL में इसके उपयोग से संबंधित हैं। ध्यान रखें कि अन्य रिलेशनल डेटाबेस का उपयोग करते समय सिंटैक्स में मामूली अंतर हो सकता है क्योंकि उनके पास SQL ​​​​का अपना स्वाद हो सकता है। फ़ंक्शन की अवधारणा समान है, लेकिन इसे अलग-अलग शब्दों में लिखा जा सकता है।


  1. टिंकर में OptionMenu विजेट का उपयोग करके फ़ंक्शन को कैसे कॉल करें?

    आइए एक उदाहरण लें और देखें कि टिंकर में OptionMenu विजेट का उपयोग करके फ़ंक्शन को कैसे कॉल करें। उदाहरण में, हम एक StringVar . का उपयोग करेंगे ऑब्जेक्ट और इसकी get() विधि को कॉल करें। एक स्ट्रिंगवार टिंकर में ऑब्जेक्ट विजेट के मूल्य को प्रबंधित करने में मदद कर सकता है। हम एक OptionMenu विजेट बनाएंग

  1. एक्सेल में कॉन्टेनेट फ़ंक्शन का उपयोग कैसे करें

    CONCATENATE एक्सेल में फ़ंक्शन आपको टेक्स्ट-आधारित सेल में अधिक आसानी से हेरफेर करने में मदद करता है। जबकि संख्याओं पर गणना करने के बहुत सारे कार्य हैं, यह फ़ंक्शन एक ही सेल में कई टेक्स्ट सेल को एक साथ लाने में मदद करता है। कोई फर्क नहीं पड़ता कि टेक्स्ट क्या है, आप इसे मूल सेल में कुछ भी बदले बिना

  1. राउंड फ़ंक्शन का उपयोग करके एक्सेल में संख्याओं को कैसे गोल करें

    ऐसे समय होते हैं जब आपके एक्सेल प्रेजेंटेशन के रूप और स्पष्टता को बेहतर बनाने के लिए मानों को निकटतम दशमलव या पूर्ण संख्या में पूर्णांकित करने के लिए उपयोग किया जाना चाहिए। जब आप संख्याओं को गोल करते हैं, तो आप कम से कम महत्वपूर्ण अंक हटा देते हैं। यह आपके पसंदीदा स्तर की सटीकता के साथ अधिक प्रस्तुत