SUBSTR() से दूसरे कैरेक्टर पर स्पेस चेक करें
किसी स्ट्रिंग कॉलम में दूसरे स्थान (पोजीशन 2) पर स्पेस वाले रिकॉर्ड खोजने के लिए SUBSTR(column, 2, 1) = ' ' का उपयोग करें।
टेबल और डेटा
CREATE TABLE DemoTable1365 (Value VARCHAR(20));
INSERT INTO DemoTable1365 VALUES
('9756757474'), ('3 45322333'), ('8974646363'), ('9 566363622');
क्वेरी
SELECT * FROM DemoTable1365
WHERE SUBSTR(Value, 2, 1) = ' ';
आउटपुट
+-------------+ | Value | +-------------+ | 3 45322333 | | 9 566363622 | +-------------+
व्याख्या
SUBSTR(Value, 2, 1)- पोजीशन 2 से 1 कैरेक्टर निकालता है (दूसरा कैरेक्टर)= ' '- स्पेस से तुलना- '3 45322333': पोजीशन 1='3', पोजीशन 2=' ' → मैच
- '9 566363622': पोजीशन 1='9', पोजीशन 2=' ' → मैच
SUBSTR vs SUBSTRING
दोनों समान हैं: SUBSTR(str, pos, len) = SUBSTRING(str, pos, len)
सामान्यीकरण: Nवें स्थान पर स्पेस
-- 5वें स्थान पर स्पेस
WHERE SUBSTR(Value, 5, 1) = ' '
-- किसी भी स्थान पर स्पेस (पहला स्पेस)
WHERE LOCATE(' ', Value) = desired_position
पैटर्न मिलान विकल्प
-- दूसरा कैरेक्टर स्पेस हो
WHERE Value LIKE '_ %' -- _ = कोई एक कैरेक्टर, % = बाकी
-- REGEXP से
WHERE Value REGEXP '^.. .'
उपयोग के मामले
- फिक्स्ड-चौड़ाई फॉर्मेट डेटा पार्सिंग
- डेटा क्वालिटी चेक (अप्रत्याशित स्पेस)
- लिगेसी डेटा माइग्रेशन वैलिडेशन