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

MySQL में DATETIME कॉलम में वर्ष, महीना, दिन, घंटा, मिनट जोड़कर अपडेट करना

INTERVAL से डेटाटाइम में समय जोड़ना

MySQL में मौजूदा DATETIME कॉलम में वर्ष, महीना, दिन, घंटा और मिनट जोड़कर अपडेट करने के लिए एकाधिक INTERVAL एक्सप्रेशन को जोड़ सकते हैं।

टेबल बनाना और डेटा इन्सर्ट करना

CREATE TABLE DemoTable1509 (ArrivalTime DATETIME);

INSERT INTO DemoTable1509 VALUES('2018-01-21 10:20:30');
INSERT INTO DemoTable1509 VALUES('2019-04-01 11:00:00');
INSERT INTO DemoTable1509 VALUES('2015-12-12 05:45:20');

मौजूदा डेटा

+---------------------+
| ArrivalTime         |
+---------------------+
| 2018-01-21 10:20:30 |
| 2019-04-01 11:00:00 |
| 2015-12-12 05:45:20 |
+---------------------+

क्वेरी: 10 साल 3 महीने 22 दिन 10 घंटे 30 मिनट जोड़ना

UPDATE DemoTable1509 
SET ArrivalTime = ArrivalTime 
    + INTERVAL 10 YEAR 
    + INTERVAL 3 MONTH 
    + INTERVAL 22 DAY 
    + INTERVAL 10 HOUR 
    + INTERVAL 30 MINUTE;
Query OK, 3 rows affected (0.17 sec)
Rows matched: 3  Changed: 3  Warnings: 0

अपडेट के बाद डेटा

SELECT * FROM DemoTable1509;
+---------------------+
| ArrivalTime         |
+---------------------+
| 2028-05-13 20:50:30 |
| 2029-07-23 21:30:00 |
| 2026-04-03 16:15:20 |
+---------------------+

गणना विवरण (पहली रो)

  • मूल: 2018-01-21 10:20:30
  • +10 साल → 2028-01-21 10:20:30
  • +3 महीने → 2028-04-21 10:20:30
  • +22 दिन → 2028-05-13 10:20:30
  • +10 घंटे → 2028-05-13 20:20:30
  • +30 मिनट → 2028-05-13 20:50:30

संक्षिप्त सिंटैक्स (MySQL 8.0+)

UPDATE DemoTable1509 
SET ArrivalTime = ArrivalTime + INTERVAL '10-3' YEAR_MONTH 
    + INTERVAL '22 10:30' DAY_HOUR;

DATE_ADD() फंक्शन विकल्प

UPDATE DemoTable1509 
SET ArrivalTime = DATE_ADD(ArrivalTime, INTERVAL 10 YEAR);
-- एकाधिक DATE_ADD नेस्ट करें या उपरोक्त INTERVAL जोड़ उपयोग करें

SELECT में उपयोग (बिना अपडेट)

SELECT ArrivalTime,
    ArrivalTime + INTERVAL 10 YEAR + INTERVAL 3 MONTH + INTERVAL 22 DAY + INTERVAL 10 HOUR + INTERVAL 30 MINUTE AS NewArrivalTime
FROM DemoTable1509;

सावधानी

  • महीना/वर्ष जोड़ने पर दिन ओवरफ्लो संभाल: 2028-01-31 + 1 महीना = 2028-02-29 (लीप वर्ष)
  • समय क्षेत्र (Timezone) ध्यान में रखें अगर DATETIME की बजाय TIMESTAMP है
  • बड़े अपडेट के लिए बैच प्रोसेसिंग करें
  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 में कॉलम मान 'None' को 'N/A' से कैसे अपडेट करें?

    कई बार डेटाबेस में None जैसे स्ट्रिंग मान स्टोर हो जाते हैं जो वास्तव में NULL या अनुपलब्ध डेटा दर्शाते हैं। ऐसे मानों को अधिक सार्थक N/A (Not Available) से बदलने के लिए MySQL का UPDATE स्टेटमेंट उपयोग करें। उदाहरण: None को N/A में बदलना डेमो टेबल बनाएं और डेटा इन्सर्ट करें: mysql> CREATE TABL

  1. - MySQL में DATE_ADD से 45 दिन जोड़कर नए कॉलम में कैसे प्रदर्शित करें?

    MySQL में DATE/DATETIME कॉलम में दिन जोड़ने और परिणाम को नए कॉलम में प्रदर्शित करने के लिए DATE_ADD() फंक्शन (या + INTERVAL सिंटैक्स) का उपयोग करें। यह देय तारीख, समाप्ति तारीख, शेड्यूलिंग गणना के लिए आवश्यक है। उदाहरण: DueTime में 45 दिन जोड़ना डेमो टेबल बनाएं: mysql> CREATE TABLE DemoTable19