आइए पहले एक टेबल बनाते हैं:
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;