MySQL में UPDATE और SUBSTR() का उपयोग करके स्ट्रिंग का पहला कैरेक्टर हटाना
जब किसी कॉलम के सभी मानों से पहला कैरेक्टर हटाना हो (जैसे अग्रणी कॉमा, स्पेस, या विशेष कैरेक्टर), तो SUBSTR() या SUBSTRING() फंक्शन के साथ UPDATE उपयोग करें।
सिंटैक्स:
UPDATE yourTableName SET yourColumnName = SUBSTR(yourColumnName, 2);
SUBSTR(str, 2) का अर्थ: स्ट्रिंग के दूसरे कैरेक्टर से शुरू करके अंत तक सब कुछ लौटाएं (यानी पहला कैरेक्टर छोड़ दें)।
व्यावहारिक उदाहरण
1. टेबल बनाएं:
mysql> CREATE TABLE CutStringDemo (
-> Value VARCHAR(100)
-> );
Query OK, 0 rows affected (0.66 sec)
2. अग्रणी कॉमा वाले डेटा डालें:
mysql> INSERT INTO CutStringDemo VALUES(',12,3456');
mysql> INSERT INTO CutStringDemo VALUES(',23,9867');
mysql> INSERT INTO CutStringDemo VALUES(',20,3212');
mysql> INSERT INTO CutStringDemo VALUES(',23456,1234');
3. अपडेट से पहले:
+-------------+ | Value | +-------------+ | ,12,3456 | | ,23,9867 | | ,20,3212 | | ,23456,1234 | +-------------+ 4 rows in set (0.00 sec)
4. पहला कैरेक्टर हटाएं:
mysql> UPDATE CutStringDemo SET Value = SUBSTR(Value, 2); Query OK, 4 rows affected (0.20 sec) Rows matched: 4 Changed: 4 Warnings: 0
5. अपडेट के बाद:
+------------+ | Value | +------------+ | 12,3456 | | 23,9867 | | 20,3212 | | 23456,1234 | +------------+ 4 rows in set (0.00 sec)
विविधताएं:
पहले N कैरेक्टर हटाएं:
UPDATE table_name SET col = SUBSTR(col, N+1);
अंतिम N कैरेक्टर हटाएं:
UPDATE table_name SET col = LEFT(col, LENGTH(col) - N);
TRIM() से विशिष्ट कैरेक्टर हटाएं (बेहतर विकल्प):
-- केवल अग्रणी कॉमा हटाएं UPDATE table_name SET col = TRIM(LEADING ',' FROM col); -- दोनों तरफ से स्पेस हटाएं UPDATE table_name SET col = TRIM(col);
सावधानी:
WHEREक्लॉज के बिना यह सभी पंक्तियों को अपडेट करेगा- पहले
SELECTसे प्रभावित पंक्तियां जांचें - बड़े टेबल पर बैच में अपडेट करें