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

MySQL में REPLACE() फ़ंक्शन से कॉलम मान में स्ट्रिंग ढूंढें और बदलें

MySQL UPDATE में REPLACE() फ़ंक्शन का उपयोग

किसी कॉलम के मान के अंदर विशिष्ट सबस्ट्रिंग को ढूंढकर बदलने के लिए REPLACE(column, old_substring, new_substring) फ़ंक्शन का उपयोग करें।

सिंटैक्स

UPDATE yourTableName
SET yourColumnName = REPLACE(yourColumnName, 'oldValue', 'newValue');

उदाहरण: फ़ाइल पथ अपडेट करना

CREATE TABLE FindReplaceDemo (
    FileId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    FileDirectory TEXT
);

INSERT INTO FindReplaceDemo (FileDirectory) VALUES
('C://User//MySQL'),
('D://WebsiteImage//image1.jpg'),
('E://Java//AdvancedJava');

अपडेट क्वेरी

UPDATE FindReplaceDemo
SET FileDirectory = REPLACE(FileDirectory, 'E://Java//AdvancedJava', 'E://Java//SpringAndHibernateFramework');

परिणाम

+--------+---------------------------------------+
| FileId | FileDirectory                         |
+--------+---------------------------------------+
| 1      | C://User//MySQL                       |
| 2      | D://WebsiteImage//image1.jpg          |
| 3      | E://Java//SpringAndHibernateFramework |
+--------+---------------------------------------+

महत्वपूर्ण बिंदु

  • REPLACE केस-सेंसिटिव है (डिफ़ॉल्ट कॉलेशन के अनुसार)।
  • यह सभी घटनाओं को बदलता है, केवल पहली नहीं।
  • बड़े टेबल पर WHERE क्लॉज जोड़कर केवल प्रभावित पंक्तियों को अपडेट करें: WHERE FileDirectory LIKE '%AdvancedJava%'।
  • REPLACE NULL पर NULL लौटाता है।

केस-इनसेंसिटिव रिप्लेसमेंट

UPDATE FindReplaceDemo
SET FileDirectory = REPLACE(LOWER(FileDirectory), 'advancedjava', 'SpringAndHibernateFramework')
WHERE LOWER(FileDirectory) LIKE '%advancedjava%';

लेकिन यह मूल केस को बदल देगा। केस बरकरार रखने के लिए एप्लिकेशन लेयर पर 처리 करें।

  1. - MySQL क्वेरी में 'Empty set' को कैसे बदलें?

    परिचय जब कोई क्वेरी कोई पंक्ति नहीं लौटाती (Empty set), और आप इसके बजाय एक डिफ़ॉल्ट मान दिखाना चाहते हैं, तो MySQL का COALESCE() फंक्शन उपयोगी है। यह पहला नॉन-NULL मान लौटाता है। उदाहरण: टेबल बनाना और डेटा डालना ); Query OK, 0 rows affected (1.64 sec) INSERT INTO DemoTable VALUES(78); Query OK,

  1. - MySQL में Nth अधिकतम मान खोजने का क्वेरी

    आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable -> ( -> Value int -> ); Query OK, 0 rows affected (0.59 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysql> insert into DemoTable values(40); Query OK, 1 row affected (0.26 sec) mysql> insert into DemoTable

  1. - C++ में स्ट्रिंग में ढूंढें और बदलें

    मान लीजिए हमारे पास एक स्ट्रिंग S है, हम कुछ प्रतिस्थापन ऑपरेशन करेंगे जो अक्षरों के समूहों को नए के साथ बदलते हैं। प्रत्येक प्रतिस्थापन ऑपरेशन में 3 पैरामीटर होते हैं - एक प्रारंभिक इंडेक्स i, एक स्रोत शब्द x और एक लक्ष्य शब्द y। अब नियम यह है कि यदि x मूल स्ट्रिंग S में स्थिति i पर शुरू होता है,