Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में पंक्तियों से नई लाइन वर्ण कैसे हटाएं?

MySQL में TRIM(), REPLACE(), या REGEXP_REPLACE() (8.0+) का उपयोग करके नई लाइन वर्ण (\n, \r, \r\n) हटा सकते हैं।

समस्या: डेटा में नई लाइन

mysql> INSERT INTO tblDemotrail VALUES 
(1, 'John '), 
(2, ' Carol'), 
(3, ' Sam '), 
(4, 'Tom\n '), 
(5, '\nTim ');

समाधान 1: TRIM() - केवल शुरुआत/अंत से

-- ट्रेलिंग नई लाइन हटाएं
UPDATE tblDemotrail 
SET name = TRIM(TRAILING '\n' FROM name);

-- लीडिंग और ट्रेलिंग दोनों स्पेस/नई लाइन
UPDATE tblDemotrail 
SET name = TRIM(BOTH '\n' FROM name);

-- सभी तरफ से स्पेस और नई लाइन
UPDATE tblDemotrail 
SET name = TRIM(name);

समाधान 2: REPLACE() - कहीं भी नई लाइन

-- सभी \n हटाएं
UPDATE tblDemotrail 
SET name = REPLACE(name, '\n', '');

-- \r और \r\n भी हटाएं
UPDATE tblDemotrail 
SET name = REPLACE(REPLACE(REPLACE(name, '\r\n', ''), '\r', ''), '\n', '');

समाधान 3: REGEXP_REPLACE() (MySQL 8.0+)

UPDATE tblDemotrail 
SET name = REGEXP_REPLACE(name, '[\r\n]+', '');

चयन करते समय सफाई (डेटा बदले बिना)

SELECT id, TRIM(REPLACE(REPLACE(name, '\r', ''), '\n', '')) AS clean_name
FROM tblDemotrail;

सर्वोत्तम अभ्यास

  • डेटा डालते समय ही साफ करें (एप्लिकेशन लेयर में)।
  • बैकएंड वैलिडेशन में TRIM() और REPLACE() उपयोग करें।
  • बड़े अपडेट के लिए बैच में प्रोसेस करें ताकि लॉक न लगे।
  1. - MySQL टेबल से एकाधिक पंक्तियां कैसे हटाएं?

    हम उन एकाधिक पंक्तियों की पहचान करने वाले WHERE क्लॉज के साथ DELETE स्टेटमेंट का उपयोग करके MySQL टेबल से एकाधिक पंक्तियां हटा सकते हैं। उदाहरण 2; Query OK, 2 rows affected (0.04 sec) 2 वाली दो पंक्तियों की पहचान करता है। mysql> Select * from names; +------+-----------+ | id | name |

  1. - MySQL में स्ट्रिंग से सभी नॉन-अल्फ़ान्यूमेरिक कैरेक्टर कैसे हटाएं?

    नॉन-अल्फ़ान्यूमेरिक कैरेक्टर निम्न हैं − @, !, #, &, (, ), ?, / MySQL में स्ट्रिंग से नॉन-अल्फ़ान्यूमेरिक कैरेक्टर हटाने के लिए कोई इनबिल्ट फंक्शन नहीं है। इसलिए, हम एक फंक्शन बनाते हैं जो सभी नॉन-अल्फ़ान्यूमेरिक कैरेक्टर हटा देता है। फंक्शन डिक्लेरेशन और डेफिनिशन निम्न है। mysql> d

  1. MySQL से अंतिम 10 रो कैसे चुनें? MySQL से अंतिम 10 रो कैसे चुनें?

    MySQL से अंतिम 10 रो चुनने के लिए, हम SELECT स्टेटमेंट और LIMIT कॉन्सेप्ट के साथ सबक्वेरी का उपयोग कर सकते हैं। निम्न एक उदाहरण है। टेबल बनाना। mysql> create table Last10RecordsDemo -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.75 sec) टेबल में रिकॉर