गैर-अल्फ़ान्यूमेरिक वर्ण इस प्रकार हैं -
@,!,#,&,(),?, /
MySQL में एक स्ट्रिंग से गैर-अल्फ़ान्यूमेरिक वर्णों को निकालने के लिए कोई इनबिल्ट फ़ंक्शन नहीं है। इसलिए, हम एक फ़ंक्शन बनाते हैं जो सभी गैर-अल्फ़ान्यूमेरिक वर्णों को हटा देता है। फ़ंक्शन घोषणा और परिभाषा इस प्रकार है।
mysql> delimiter //mysql> क्रिएट फंक्शन रिमूव नॉनअल्फान्यूमेरिक (s CHAR(255)) रिटर्न्स चार्ज (255) डिटरमिनिस्टिक -> BEGIN -> DECLARE var1, length SMALLINT DEFAULT 1; -> परिणाम घोषित करें (255) डिफ़ॉल्ट ''; -> CH CHAR(1) घोषित करें; -> सेट लंबाई =CHAR_LENGTH (एस); -> दोहराएं -> शुरू करें -> सेट च =मध्य (एस, var1, 1); -> अगर ch REGEXP '[[:alnum:]]' तब -> परिणाम सेट करें =CONCAT (परिणाम, ch); -> अंत अगर; -> सेट var1 =var1 + 1; -> अंत; -> जब तक var1>लंबाई अंत दोहराएं; -> रिटर्न परिणाम; -> END // क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.10 सेकंड)
'RemoveNonAlphaNumeric' नाम का फ़ंक्शन एक स्ट्रिंग से सभी गैर-अल्फ़ान्यूमेरिक वर्णों को हटा देता है। जाँच करने के लिए, अब हम उपयोगकर्ता-परिभाषित फ़ंक्शन को कॉल करेंगे।
mysql>delimiter;mysql> 'My ईमेल id is test@123!' चुनें,RemoveNonAlphaNumeric('My Email id is test@123!');
निम्नलिखित आउटपुट है जो "RemoveNonAlphaNumeric" फ़ंक्शन का उपयोग करके अल्फ़ान्यूमेरिक वर्णों के सफल निष्कासन को प्रदर्शित करता है।
<पूर्व>+--------------------------+---------------------------- --------------------------------+| मेरी ईमेल आईडी है test@123! | removeNonAlphaNumeric('My ईमेल id is test@123!') |+--------------------------+---------- -------------------------------------------+| मेरी ईमेल आईडी है test@123! | MyEmailidistest123 |+--------------------------+-------------------------- -----------------------------+1 पंक्ति सेट में (0.15 सेकंड)इस स्ट्रिंग (MyEmailidistest123) में, कोई @ और ! अब प्रतीक हैं, जिसका अर्थ है कि फ़ंक्शन सही ढंग से काम कर रहा है।