स्ट्रिंग में अंतिम कॉमा के बाद सभी वर्णों को हटाने के लिए, आप SUBSTRING_INDEX() का उपयोग कर सकते हैं।
यदि आप अंतिम अल्पविराम का स्थान नहीं जानते हैं, तो आपको LENGTH() का उपयोग करके गतिशील रूप से अंतिम अल्पविराम खोजने की आवश्यकता है।
वाक्यविन्यास इस प्रकार है -
अपना टेबलनाम अपडेट करें अपना कॉलमनाम सेट करें =SUBSTRING_INDEX(yourColumnName, ',',LENGTH(yourColumnName) - LENGTH(REPLACE(yourColumnName, ',', '')));
उपरोक्त सिंटैक्स को समझने के लिए, आइए एक टेबल बनाएं। तालिका बनाने की क्वेरी इस प्रकार है -
mysql> टेबल बनाएं RemoveAllCharacters -> ( -> Id int NOT NULL AUTO_INCREMENT, -> FullInfo varchar(200), -> PRIMARY KEY(Id) -> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (1.83 सेकंड)पूर्व>इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। क्वेरी इस प्रकार है -
mysql> RemoveAllCharacters(FullInfo) मानों में डालें ('जॉन, स्मिथ, 23,98,4565886'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.23 सेकंड) mysql> RemoveAllCharacters (FullInfo) मान ('कैरोल, टेलर') में डालें ,26,91');क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.28 सेकंड)mysql> RemoveAllCharacters(FullInfo) मान ('डेविड, मिलर, 21') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.11 सेकंड) mysql> में डालें RemoveAllCharacters (FullInfo) मान ('रॉबर्ट, जोन्स, 22,97'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.09 सेकंड) mysql> RemoveAllCharacters (FullInfo) मान ('सैम, विलियम्स, 27,88,456788,97877' में डालें) );क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.13 सेकंड)चयनित कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है -
mysql> RemoveAllCharacters से *चुनें;निम्न आउटपुट है -
<पूर्व>+----+---------------------------------+| आईडी | फुलइन्फो |+----+------------------------------------------+| 1 | जॉन, स्मिथ, 23,98,4565886 || 2 | कैरल, टेलर,26,91 | | 3 | डेविड, मिलर,21 || 4 | रॉबर्ट, जोन्स, 22,97 || 5 | सैम, विलियम्स, 27,88,456788,97877 |+----+-------------------------------- -+5 पंक्तियाँ सेट में (0.00 सेकंड)
स्ट्रिंग में अंतिम अल्पविराम के बाद सभी वर्णों को हटाने की क्वेरी निम्नलिखित है -
mysql> अद्यतन निकालें सभी वर्ण -> FullInfo सेट करें =SUBSTRING_INDEX(FullInfo, ',', LENGTH(FullInfo) - LENGTH(REPLACE(FullInfo, ',', '')));क्वेरी ठीक है, 5 पंक्तियाँ प्रभावित (0.28 सेकंड) )पंक्तियों का मिलान हुआ:5 परिवर्तित:5 चेतावनियाँ:0
अब एक बार फिर से टेबल के सारे रिकॉर्ड चेक कर लें। क्वेरी इस प्रकार है -
mysql> RemoveAllCharacters से *चुनें;
अंतिम अल्पविराम के बाद वर्णों के बिना रिकॉर्ड प्रदर्शित करने वाला आउटपुट निम्न है:
<पूर्व>+----+---------------------------+| आईडी | फुलइन्फो |+----+---------------------------+| 1 | जॉन, स्मिथ, 23,98 || 2 | कैरल, टेलर, 26 || 3 | डेविड, मिलर || 4 | रॉबर्ट, जोन्स, 22 || 5 | सैम, विलियम्स, 27,88,456788 |+-----+--------------------------+5 पंक्तियों में सेट (0.00 सेकंड)