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

MySQL में ADDDATE से टेबल की तारीख में 30 दिन कैसे जोड़ें?

MySQL में टेबल के दिनांक कॉलम में 30 दिन (या कोई भी अंतराल) जोड़ने के लिए ADDDATE() या DATE_ADD() के साथ UPDATE का उपयोग करें।

सिंटैक्स

UPDATE yourTableName 
SET yourDateColumn = ADDDATE(yourDateColumn, INTERVAL 30 DAY);

उदाहरण के साथ समझें

टेबल बनाएं:

CREATE TABLE Add30DayDemo (
    Id INT NOT NULL AUTO_INCREMENT,
    ShippingDate DATE,
    PRIMARY KEY(Id)
);

रिकॉर्ड डालें:

INSERT INTO Add30DayDemo(ShippingDate) VALUES('2019-02-04');
INSERT INTO Add30DayDemo(ShippingDate) VALUES('2018-11-15');
INSERT INTO Add30DayDemo(ShippingDate) VALUES('2013-05-18');
INSERT INTO Add30DayDemo(ShippingDate) VALUES('2017-08-25');
INSERT INTO Add30DayDemo(ShippingDate) VALUES('2016-03-01');
INSERT INTO Add30DayDemo(ShippingDate) VALUES('2015-09-03');

सभी रिकॉर्ड देखें:

SELECT * FROM Add30DayDemo;

आउटपुट:

+----+--------------+
| Id | ShippingDate |
+----+--------------+
| 1  | 2019-02-04   |
| 2  | 2018-11-15   |
| 3  | 2013-05-18   |
| 4  | 2017-08-25   |
| 5  | 2016-03-01   |
| 6  | 2015-09-03   |
+----+--------------+

30 दिन जोड़ने का क्वेरी

UPDATE Add30DayDemo 
SET ShippingDate = ADDDATE(ShippingDate, INTERVAL 30 DAY);

परिणाम: Query OK, 6 rows affected (0.44 sec) Rows matched: 6 Changed: 6 Warnings: 0

अपडेट के बाद जांचें

SELECT * FROM Add30DayDemo;

आउटपुट (30 दिन बाद की तारीखें):

+----+--------------+
| Id | ShippingDate |
+----+--------------+
| 1  | 2019-03-06   |
| 2  | 2018-12-15   |
| 3  | 2013-06-17   |
| 4  | 2017-09-24   |
| 5  | 2016-03-31   |
| 6  | 2015-10-03   |
+----+--------------+

DATE_ADD() विकल्प (समान)

UPDATE Add30DayDemo 
SET ShippingDate = DATE_ADD(ShippingDate, INTERVAL 30 DAY);

अन्य अंतराल उदाहरण

-- 10 दिन घटाएं
UPDATE table SET dateCol = DATE_SUB(dateCol, INTERVAL 10 DAY);

-- 1 महीना जोड़ें
UPDATE table SET dateCol = DATE_ADD(dateCol, INTERVAL 1 MONTH);

-- 1 साल जोड़ें
UPDATE table SET dateCol = DATE_ADD(dateCol, INTERVAL 1 YEAR);

-- 2 सप्ताह घटाएं
UPDATE table SET dateCol = DATE_SUB(dateCol, INTERVAL 2 WEEK);

-- 6 घंटे जोड़ें (DATETIME के लिए)
UPDATE table SET datetimeCol = DATE_ADD(datetimeCol, INTERVAL 6 HOUR);

विशिष्ट पंक्तियों के लिए WHERE क्लॉज

-- केवल 2023 के बाद की तारीखों में 30 दिन जोड़ें
UPDATE Add30DayDemo 
SET ShippingDate = ADDDATE(ShippingDate, INTERVAL 30 DAY)
WHERE ShippingDate >= '2023-01-01';

NULL मान हैंडलिंग

-- NULL को छोड़कर अपडेट
UPDATE Add30DayDemo 
SET ShippingDate = ADDDATE(ShippingDate, INTERVAL 30 DAY)
WHERE ShippingDate IS NOT NULL;

नोट

  • ADDDATE() और DATE_ADD() समान हैं
  • DATE_SUB() और SUBDATE() समान हैं
  • बड़े टेबल पर बैच में अपडेट करें (LIMIT 1000 प्रति बैच)
  • लेनदेन (ट्रांजैक्शन) में लपेटें यदि रोलबैक की आवश्यकता हो
  1. - MySQL में DATE_ADD और INTERVAL से DATETIME कॉलम में दिन जोड़ें

    DATE_ADD() फ़ंक्शन के साथ INTERVAL n DAY का उपयोग करके DATETIME कॉलम में दिन जोड़ें (या घटाएं)। टेबल बनाएं mysql> CREATE TABLE DemoTable1871 (ArrivalDate DATETIME); डेटा डालें mysql> INSERT INTO DemoTable1871 VALUES(2019-12-19 07:45:00), (2018-11-10 12:00:00), (2019-01-31); 6 दिन जोड़ें (UP

  1. - MySQL में CREATE TABLE में AUTO_INCREMENT प्रारंभ मान मैन्युअल सेट करें

    CREATE TABLE स्टेटमेंट में AUTO_INCREMENT = N टेबल विकल्प का उपयोग करके ऑटो-इन्क्रीमेंट काउंटर का प्रारंभ मान सेट करें। टेबल बनाएं (प्रारंभ 100) mysql> CREATE TABLE DemoTable1907 ( UserId INT NOT NULL AUTO_INCREMENT, UserName VARCHAR(20), UserAge INT, UserCountryName VARCHAR(20),

  1. - MySQL में DATE_ADD से वर्तमान तारीख में 11 दिन जोड़ें

    WHERE CURDATE() और DATE_ADD से आज की तारीख में अंतराल जोड़ें आज की तारीख वाली पंक्तियों के लिए 11 दिन आगे की तारीख गणना करने के लिए DATE_ADD के साथ WHERE CURDATE() का उपयोग करें। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable1994 ( ArrivalDate date ); Query OK, 0 rows affected (5.33 sec)