MySQL में किसी स्ट्रिंग के अंत से निर्दिष्ट संख्या में वर्ण हटाने (ट्रिम करने) के लिए SUBSTRING() के साथ LENGTH() फ़ंक्शन का संयोजन उपयोग करें। MySQL में अंत से ट्रिम करने का कोई सीधा RTRIM(n) फ़ंक्शन नहीं है।
सिंटैक्स
SUBSTRING(column_name, 1, LENGTH(column_name) - n)
1- प्रारंभ स्थिति (पहला वर्ण)LENGTH(column_name) - n- लंबाई जहां सेnअंतिम वर्ण घटाए गए हैं
व्यावहारिक उदाहरण
टेबल बनाएं:
mysql> CREATE TABLE DemoTable1329 (StudentName VARCHAR(40));
डेटा डालें:
mysql> INSERT INTO DemoTable1329 VALUES('David Miller');
mysql> INSERT INTO DemoTable1329 VALUES('Chris Brown');
mysql> INSERT INTO DemoTable1329 VALUES('Adam Smith');
mysql> INSERT INTO DemoTable1329 VALUES('John Doe');
डेटा देखें:
mysql> SELECT * FROM DemoTable1329;
+--------------+ | StudentName | +--------------+ | David Miller | | Chris Brown | | Adam Smith | | John Doe | +--------------+
अंत से 5 वर्ण हटाने की क्वेरी
mysql> SELECT SUBSTRING(StudentName, 1, LENGTH(StudentName) - 5) FROM DemoTable1329;
परिणाम
+----------------------------------------------------+ | SUBSTRING(StudentName, 1, LENGTH(StudentName) - 5) | +----------------------------------------------------+ | David M | | Chris | | Adam | | Joh | +----------------------------------------------------+
व्याख्या
| मूल | लंबाई | -5 | परिणाम |
|---|---|---|---|
| David Miller (12) | 12 | 7 | David M |
| Chris Brown (11) | 11 | 6 | Chris |
| Adam Smith (10) | 10 | 5 | Adam |
| John Doe (8) | 8 | 3 | Joh |
सामान्यीकृत पुन: प्रयोज्य फ़ंक्शन दृष्टिकोण
MySQL 8.0+ में उपयोगकर्ता-परिभाषित फ़ंक्शन बनाएं:
CREATE FUNCTION TRIM_RIGHT(str VARCHAR(255), n INT) RETURNS VARCHAR(255) DETERMINISTIC RETURN SUBSTRING(str, 1, GREATEST(LENGTH(str) - n, 0));
उपयोग: SELECT TRIM_RIGHT(StudentName, 5) FROM DemoTable1329;
संबंधित फ़ंक्शन
| फ़ंक्शन | उद्देश्य |
|---|---|
TRIM() | दोनों ओर से स्पेस/निर्दिष्ट वर्ण हटाता है |
LTRIM() | बाएं से स्पेस हटाता है |
RTRIM() | दाएं से स्पेस हटाता है |
LEFT(str, n) | बाएं से n वर्ण |
RIGHT(str, n) | दाएं से n वर्ण |