MySQL में SUBSTRING() और CHAR_LENGTH() फंक्शन का उपयोग करके कॉलम के अंतिम N वर्ण हटाएं।
सिंटैक्स
SELECT yourColumnName,
SUBSTRING(yourColumnName, 1, CHAR_LENGTH(yourColumnName) - 2) AS newColumnName
FROM yourTableName;
उदाहरण
टेबल बनाना
mysql> create table LastTwoCharacters ( -> Words varchar(200) -> ); Query OK, 0 rows affected (0.71 sec)
रिकॉर्ड डालना
mysql> insert into LastTwoCharacters values('Hellooo');
mysql> insert into LastTwoCharacters values('Worldsss');
mysql> insert into LastTwoCharacters values('Johnson');
अंतिम दो वर्ण हटाना
mysql> select Words, SUBSTRING(Words, 1, CHAR_LENGTH(Words) - 2) AS AfterStripLastTwoChar from LastTwoCharacters;
+----------+-----------------------+ | Words | AfterStripLastTwoChar | +----------+-----------------------+ | Hellooo | Hello | | Worldsss | Worlds | | Johnson | Johns | +----------+-----------------------+
फंक्शन व्याख्या
CHAR_LENGTH(str)— स्ट्रिंग की लंबाई वर्णों में लौटाता हैSUBSTRING(str, start, length)— start स्थिति से length वर्ण निकालता हैCHAR_LENGTH(Words) - 2— अंतिम 2 वर्ण छोड़कर लंबाई
सामान्यीकृत: अंतिम N वर्ण हटाना
-- अंतिम 3 वर्ण हटाने के लिए SUBSTRING(column_name, 1, CHAR_LENGTH(column_name) - 3) -- पैरामीटर के साथ SET @n = 2; SELECT SUBSTRING(column_name, 1, CHAR_LENGTH(column_name) - @n) FROM table_name;
वैकल्पिक तरीके
-- LEFT फंक्शन (MySQL विशिष्ट) SELECT LEFT(Words, CHAR_LENGTH(Words) - 2) FROM LastTwoCharacters; -- REPLACE का उपयोग (यदि अंतिम वर्ण ज्ञात हों) SELECT REPLACE(Words, 'oo', '') FROM LastTwoCharacters; -- केवल 'oo' हटाता है
सावधानी
- यदि स्ट्रिंग लंबाई < 2 है, तो परिणाम खाली स्ट्रिंग होगा
- बहु-बाइट वर्णों (यूनिकोड) के लिए
CHAR_LENGTHसही है,LENGTHबाइट्स लौटाता है - NULL मान पर परिणाम NULL होगा