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

जांचें कि कोई फ़ील्ड खाली है या MySQL में शून्य है?

<घंटा/>

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

चुनें *, केस जब आपका कॉलमनाम =' तब 'yourMessage1' जब आपका कॉलमनाम न्यूल हो तब 'yourMessage2'ELSE CONCAT(yourColumnName ,' एक नाम है')END जैसा कि आपके टेबलनाम से कोई भी वैरिएबल नाम है;

उपरोक्त वाक्य रचना को समझने के लिए, आइए एक तालिका बनाते हैं। तालिका बनाने की क्वेरी इस प्रकार है:

mysql> टेबल चेकफिल्ल्डडेमो बनाएं -> ( -> आईडी नॉट न्यूल ऑटो_इनक्रिमेंट, -> नाम वर्कर (10), -> प्राथमिक कुंजी (आईडी) ->); क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.64 सेकंड)  पूर्व> 

इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। क्वेरी इस प्रकार है:

mysql> checkFieldDemo (नाम) मान (NULL) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> checkFieldDemo (नाम) मान ('जॉन') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड) )mysql> checkFieldDemo (नाम) मान (NULL) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.10 सेकंड) mysql> checkFieldDemo (नाम) मान ('') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.51 सेकंड) mysql> checkFieldDemo (नाम) मान ('कैरोल') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.14 सेकंड) mysql> checkFieldDemo (नाम) मान ('') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> सम्मिलित करें checkFieldDemo (नाम) मान (NULL) में; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.10 सेकंड)

चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है:

mysql> checkFieldDemo से *चुनें;

निम्न आउटपुट है:

+-----+----------+| आईडी | नाम |+----+----------+| 1 | शून्य || 2 | जॉन || 3 | शून्य || 4 | || 5 | कैरल || 6 | || 7 | NULL |+----+-------+7 पंक्तियाँ सेट में (0.00 सेकंड)

केस स्टेटमेंट का उपयोग करके फ़ील्ड खाली या शून्य या कुछ और जांचने की क्वेरी यहां दी गई है। क्वेरी इस प्रकार है:

mysql> * चुनें, केस -> जब नाम ='' तब 'यह एक खाली स्ट्रिंग है' -> जब नाम शून्य है तो 'यह एक पूर्ण मान है' -> अन्य concat (नाम,' एक नाम है' ) -> END को ListOfValues ​​​​के रूप में -> checkFieldDemo से;

निम्न आउटपुट है:

+-----+-------+--------------------------+| आईडी | नाम | ListOfValues ​​|+-----+-------+--------------------------+| 1 | नल | यह एक पूर्ण मूल्य है || 2 | जॉन | जॉन एक नाम है || 3 | नल | यह एक पूर्ण मूल्य है || 4 | | यह एक खाली स्ट्रिंग है || 5 | कैरल | कैरल एक नाम है || 6 | | यह एक खाली स्ट्रिंग है || 7 | नल | यह एक NULL मान है |+-----+-------+--------------------------+7 पंक्तियाँ सेट में (0.00 सेकंड)

  1. MySQL में एक कॉलम में NULL या NOT NULL मानों की जाँच करें

    इसके लिए MySQL में IS NOT NULL का इस्तेमाल करें। आइए सिंटैक्स देखें- अपना कॉलमनाम चुनें अपनेटेबलनाम से न्यूल नहीं है; यदि कॉलम में NULL मान नहीं है तो उपरोक्त क्वेरी 1 लौटाती है अन्यथा 0. आइए पहले एक − . बनाएं );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.54 सेकंड) इंसर्ट का उपयोग करके टेबल में कुछ रिकॉर

  1. एक फ़ील्ड चुनें और यदि यह रिक्त है, तो MySQL के साथ किसी अन्य को चुनें?

    इसके लिए COALESCE() का प्रयोग करें। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.57 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1470 मान (NULL,25) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड) चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्

  1. MySQL संग्रहीत कार्यविधि में NULL या रिक्त चर की जाँच करें

    NULL या खाली वेरिएबल की जांच करने के लिए, IF कंडीशन का उपयोग करें। आइए हम एक संग्रहित प्रक्रिया बनाते हैं - सीमांकक; केस 1 जब NULL पास हो जाता है। कॉल कमांड का उपयोग करके संग्रहीत कार्यविधि को कॉल करें कॉल चेकिंगForNullDemo(NULL); यह निम्नलिखित आउटपुट उत्पन्न करेगा - +---------------+| एडम स्म