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

MySQL टेबल में मान बदलें (REPLACE/CASE)

CASE स्टेटमेंट से मान बदलें

शर्तों के आधार पर कॉलम मानों को बदलने के लिए UPDATE के साथ CASE स्टेटमेंट का उपयोग करें।

उदाहरण: टेबल और डेटा

mysql> create table replaceValueDemo (
    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> Name varchar(10),
    -> isGreaterThan18 varchar(10)
    -> );
mysql> INSERT INTO replaceValueDemo(Name,isGreaterThan18) VALUES
('John','YES'), ('Carol','NO'), ('Mike','YES'), ('Bob','YES'),
('Larry','NO'), ('David','NO'), ('James','DONOTKNOW'), ('Robert','DONOTKNOW');

बदलने से पहले

+----+--------+-----------------+
| Id | Name   | isGreaterThan18 |
+----+--------+-----------------+
| 1  | John   | YES             |
| 2  | Carol  | NO              |
| 7  | James  | DONOTKNOW       |
+----+--------+-----------------+

CASE से YES↔NO स्वैप करें (DONOTKNOW अपरिवर्तित)

mysql> UPDATE replaceValueDemo
    -> SET isGreaterThan18 = CASE
    ->     WHEN isGreaterThan18 = 'YES' THEN 'NO'
    ->     ELSE 'YES'
    -> END
    -> WHERE isGreaterThan18 IN ('YES', 'NO');
Query OK, 6 rows affected (0.19 sec)

बदलने के बाद

+----+--------+-----------------+
| Id | Name   | isGreaterThan18 |
+----+--------+-----------------+
| 1  | John   | NO              |
| 2  | Carol  | YES             |
| 7  | James  | DONOTKNOW       |
| 8  | Robert | DONOTKNOW       |
+----+--------+-----------------+

CASE के दो रूप

खोजा गया CASE (शर्तें)

CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    ELSE default_result
END

सरल CASE (मान तुलना)

CASE column_name
    WHEN 'YES' THEN 'NO'
    WHEN 'NO' THEN 'YES'
    ELSE column_name
END

REPLACE() फ़ंक्शन (स्ट्रिंग प्रतिस्थापन)

सरल स्ट्रिंग बदलाव के लिए: UPDATE t SET col = REPLACE(col, 'old', 'new')

  1. - MySQL में UPDATE का उपयोग करके कॉलम मान रिप्लेस करना

    WHERE क्लॉज के साथ विशिष्ट पंक्ति का कॉलम मान अपडेट करना किसी विशिष्ट पंक्ति के कॉलम मान को बदलने के लिए UPDATE के साथ SET और WHERE का उपयोग करें। आइए पहले एक टेबल बनाते हैं: mysql> CREATE TABLE DemoTable ( StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY, Score INT ); रिकॉर्ड्स इन्सर्ट

  1. - MySQL में REPLACE() फंक्शन का उपयोग करके वर्ण कैसे बदलें?

    MySQL में REPLACE() फ़ंक्शन का उपयोग करके किसी स्ट्रिंग में सभी घटनाओं को दूसरे स्ट्रिंग से बदला जा सकता है। यह टाइपो सुधार, डेटा सफाई के लिए उपयोगी है। सिंटैक्स REPLACE(column_name, old_string, new_string) उदाहरण तालिका बनाएं और डेटा डालें (टाइपो के साथ): mysql> CREATE TABLE DemoTable (Name VA

  1. - MySQL में टेबल में मौजूद न होने वाले मानों को कैसे क्वेरी करें?

    MySQL में किसी टेबल में मौजूद नहीं होने वाले मानों को खोजने के लिए, UNION ALL के साथ WHERE NOT EXISTS या NOT IN का उपयोग करें। यह गैप विश्लेषण या मिसिंग सीक्वेंस खोजने के लिए उपयोगी है। उदाहरण: मिसिंग ऑटो-इन्क्रीमेंट मान खोजना ऑटो-इन्क्रीमेंट टेबल बनाएं: mysql> CREATE TABLE DemoTable1918 (