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

मैं यह देखने के लिए कैसे जांच करूं कि कोई मान MySQL में एक पूर्णांक है या नहीं?

<घंटा/>

यह जांचने के लिए कि दिया गया मान एक स्ट्रिंग है या नहीं, हम कास्ट () फ़ंक्शन का उपयोग करते हैं। यदि मान संख्यात्मक नहीं है तो यह 0 देता है, अन्यथा यह संख्यात्मक मान लौटाएगा। इस तरह, हम जांच सकते हैं कि मान एक पूर्णांक है या नहीं।

केस 1 - पूर्णांकों वाली स्ट्रिंग की जांच करना

mysql> कास्ट का चयन करें ('जॉन 123456' अहस्ताक्षरित के रूप में);

निम्नलिखित आउटपुट है। यह दर्शाता है कि मान संख्यात्मक नहीं है, इसलिए 0 लौटा दिया जाता है।

<पूर्व>+--------------------------------+| कास्ट ('जॉन123456' अहस्ताक्षरित के रूप में) |+--------------------------------+| 0 |+--------------------------------+1 पंक्ति सेट में, 1 चेतावनी (0.00 सेकंड)

केस 2 - केवल पूर्णांक मानों की जांच करना

mysql> कास्ट चुनें ('123456' AS UNSIGNED);

निम्नलिखित आउटपुट है। यह दर्शाता है कि मान संख्यात्मक है, इसलिए मान ही वापस आ जाता है।

<पूर्व>+----------------------------+| कास्ट ('123456' अहस्ताक्षरित के रूप में) |+----------------------------+| 123456 |+----------------------------+1 पंक्ति सेट में (0.00 सेकंड)

यह तर्क फ्लोट के लिए भी अच्छा काम करता है।

फ्लोट वैल्यू वाली क्वेरी निम्नलिखित है।

mysql>  CAST चुनें ('78.90' अहस्ताक्षरित के रूप में);

यहाँ आउटपुट है।

<पूर्व>+-------------------------------------+| कास्ट ('78.90' अहस्ताक्षरित के रूप में) |+-------------------------------+| 78 |+--------------------------+1 पंक्ति सेट में, 1 चेतावनी (0.00 सेकंड)

नियमित ऑपरेटर के साथ वैकल्पिक तर्क

यह किसी भी मूल्य के लिए सभी स्थितियों के लिए काम करता है, यहां तक ​​कि फ्लोट भी।

आइए एक नई तालिका बनाएं।

mysql> टेबल बनाएं CheckingIntegerDemo   -> (   -> Value varchar(200)   -> );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.88 सेकंड)

तालिका में रिकॉर्ड सम्मिलित करना।

mysql> CheckingIntegerDemo मानों ('जॉन123456') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.10 सेकंड) mysql>   CheckingIntegerDemo मान ('123456') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.16 सेकंड) mysql> सम्मिलित करें CheckingIntegerDemo मान ('123.456') में; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.16 सेकंड)

सभी रिकॉर्ड प्रदर्शित करने के लिए।

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

यहाँ आउटपुट है।

<पूर्व>+---------------+| मान      |+---------------+| जॉन123456 || 123456     || 123.456    |+---------------+3 पंक्तियाँ सेट में (0.00 सेकंड

उपरोक्त आउटपुट में, केवल 123456 एक पूर्णांक है और शेष नहीं हैं।

यह जांचने के लिए सिंटेक्स कि क्या मान एक पूर्णांक है।

अपनेटेबलनाम से अपना कॉलमनाम चुनें जहां आपका कॉलमनाम REGEXP '^-?[0-9]+$';

वह क्वेरी जिसमें हमने रेगुलर एक्सप्रेशन का उपयोग किया है। यह केवल पूर्णांक मान आउटपुट करेगा।

mysql> CheckingIntegerDemo से Value चुनें जहां Value REGEXP '^-?[0-9]+$';

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

<पूर्व>+--------+| मान  |+----------+| 123456 |+----------+1 पंक्ति सेट (0.00 सेकंड) में
  1. मैं MySQL में किसी तालिका में चेक बाधा कैसे जोड़ूं?

    किसी तालिका में चेक बाधा जोड़ने के लिए, आइए पहले एक तालिका बनाएं। CREATE table yourTableName (    Column_name1 datatyep,    .    .    .    .    Column_name N datatype,    check( condition) ); निम्न प्रकार से आप एक चेक बाधा बनाकर

  1. MySQL में कॉलम मान में स्ट्रिंग को कैसे प्रीपेड करें?

    MySQL में एक कॉलम मान के लिए एक स्ट्रिंग को प्रीपेन्ड करने के लिए, हम CONCAT फ़ंक्शन का उपयोग कर सकते हैं। CONCAT फ़ंक्शन का उपयोग UPDATE स्टेटमेंट के साथ किया जा सकता है। एक टेबल बनाना। );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (1.35 सेकंड) कुछ रिकॉर्ड सम्मिलित करना। PrependStringOnCOlumnName मानों

  1. कैसे जांचें कि MySQL में कौन सा डेटाबेस चुना गया है?

    इसे हम ड्यूल से DATABASE() मेथड की मदद से चेक कर सकते हैं। मान लीजिए, हम डेटाबेस व्यवसाय का उपयोग कर रहे हैं। क्वेरी इस प्रकार है - व्यवसाय का उपयोग करें;डेटाबेस बदल गया अब हम चेक कर सकते हैं कि कौन सा डेटाबेस डुअल से DATABASE () की मदद से चुना गया है। क्वेरी इस प्रकार है - सेलेक्ट DATABASE() DUA