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

MySQL में दूसरे कॉलम में DATE मान के आधार पर UPDATE करें

आइए पहले एक टेबल बनाते हैं:

mysql> create table DemoTable( 
    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    Name varchar(100), 
    AdmissionDate date ); 
Query OK, 0 rows affected (0.42 sec)

इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें:

mysql> insert into DemoTable(Name,AdmissionDate) values('Chris','2019-11-21'); 
Query OK, 1 row affected (0.19 sec)
mysql> insert into DemoTable(Name,AdmissionDate) values('Mike','2019-03-11'); 
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable(Name,AdmissionDate) values('Sam','2018-04-01'); 
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable(Name,AdmissionDate) values('Carol','2019-05-01'); 
Query OK, 1 row affected (0.40 sec)

सेलेक्ट स्टेटमेंट का उपयोग करके टेबल से सभी रिकॉर्ड प्रदर्शित करें:

mysql> select * from DemoTable;

यह निम्नलिखिक आउटपुट देगा:

+----+-------+---------------+
| Id | Name  | AdmissionDate |
+----+-------+---------------+
| 1  | Chris | 2019-11-21    |
| 2  | Mike  | 2019-03-11    |
| 3  | Sam   | 2018-04-01    |
| 4  | Carol | 2019-05-01    |
+----+-------+---------------+
4 rows in set (0.00 sec)

विशिष्ट DATE मान (2019-04-01) के आधार पर टेबल अपडेट करें

mysql> update DemoTable set Name='Robert', AdmissionDate='2019-04-01' where Id=3; 
Query OK, 1 row affected (0.14 sec)
Rows matched: 1 Changed: 1 Warnings: 0

आइए टेबल रिकॉर्ड एक बार फिर जांचें:

mysql> select * from DemoTable;

यह निम्नलिखिक आउटपुट देगा:

+----+--------+---------------+
| Id | Name   | AdmissionDate |
+----+--------+---------------+
| 1  | Chris  | 2019-11-21    |
| 2  | Mike   | 2019-03-11    |
| 3  | Robert | 2019-04-01    |
| 4  | Carol  | 2019-05-01    |
+----+--------+---------------+
4 rows in set (0.00 sec)

व्याख्या

  • WHERE Id=3 पंक्ति 3 (Sam, 2018-04-01) को लक्षित करता है
  • SET Name='Robert', AdmissionDate='2019-04-01' दोनों कॉलम अपडेट करता है
  • दिनांक लिटरल 'YYYY-MM-DD' फॉर्मेट में होना चाहिए
  • तुलना के लिए: WHERE AdmissionDate = '2019-04-01' या WHERE DATE(AdmissionDate) = '2019-04-01' (यदि DATETIME है)

दिनांक-आधारित अपडेट के अन्य उदाहरण

-- 2019 से पहले के सभी रिकॉर्ड अपडेट करें
UPDATE DemoTable SET Name='Old' WHERE AdmissionDate < '2019-01-01';

-- विशिष्ट महीने के रिकॉर्ड अपडेट करें
UPDATE DemoTable SET Name='April' WHERE MONTH(AdmissionDate)=4;
  1. - MySQL में कॉलम मान के पहले अक्षर को प्राप्त करके दूसरे कॉलम में डालें

    समाधान LEFT() फंक्शन का उपयोग करके पहले अक्षर को निकालें और UPDATE से दूसरे कॉलम में स्टोर करें। उदाहरण टेबल बनाएं: INSERT INTO DemoTable2036 (Title) VALUES (Chris), (John), (Adam); अपडेट क्वेरी UPDATE DemoTable2036 SET FirstLetter = LEFT(Title, 1); परिणाम +-------------+-------+ | FirstLetter

  1. - MySQL में मान 0 होने पर दूसरे कॉलम का मान कैसे चुनें?

    IF() फ़ंक्शन का उपयोग यदि किसी कॉलम का मान 0 है तो दूसरे कॉलम का मान लेने के लिए IF() फ़ंक्शन प्रयोग करें: select IF(yourColumnName1=0, yourColumnName2, yourColumnName1) as anyAliasName from yourTableName; टेबल बनाना और डेटा डालना insert into demo30(value,original_value) values(30,0); डेटा देखना

  1. - MySQL में किसी कॉलम में अधिकतम मान खोजना

    किसी कॉलम में अधिकतम मान खोजने के लिए MAX(columnName) का उपयोग करना होगा। लेकिन, पहले, हम MySQL में डेटाबेस और टेबल के बारे में समझेंगे। MySQL इंस्टॉल करने से पहले, यह निर्धारित करना महत्वपूर्ण है कि किस संस्करण और किस डिस्ट्रीब्यूशन फॉर्मेट (यह बाइनरी फाइल या सोर्स फाइलों से हो सकता है) का उपयोग