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

MySQL में केवल तारीख बदलें, समय रिकॉर्ड को नजरअंदाज करते हुए

MySQL में INTERVAL और YEAR (या अन्य समय इकाइयों) का उपयोग करके केवल तारीख भाग को अपडेट करें, समय को अपरिवर्तित रखते हुए।

टेबल बनाना और डेटा डालना

mysql> CREATE TABLE DemoTable (
    DueDate DATETIME
);
Query OK, 0 rows affected (0.56 sec)
mysql> INSERT INTO DemoTable VALUES('2017-08-12 10:30:45');
mysql> INSERT INTO DemoTable VALUES('2015-09-21 12:00:00');
mysql> INSERT INTO DemoTable VALUES('2018-12-31 11:45:56');
mysql> INSERT INTO DemoTable VALUES('2016-01-02 01:23:04');

अपडेट से पहले

mysql> SELECT * FROM DemoTable;

आउटपुट:

+-----------------------+
| DueDate               |
+-----------------------+
| 2017-08-12 10:30:45   |
| 2015-09-21 12:00:00   |
| 2018-12-31 11:45:56   |
| 2016-01-02 01:23:04   |
+-----------------------+
4 rows in set (0.00 sec)

1 साल बढ़ाने के लिए अपडेट क्वेरी

mysql> UPDATE DemoTable
SET DueDate = DueDate + INTERVAL 1 YEAR;
Query OK, 4 rows affected (0.16 sec)

अपडेट के बाद

mysql> SELECT * FROM DemoTable;

आउटपुट:

+-----------------------+
| DueDate               |
+-----------------------+
| 2018-08-12 10:30:45   |
| 2016-09-21 12:00:00   |
| 2019-12-31 11:45:56   |
| 2017-01-02 01:23:04   |
+-----------------------+
4 rows in set (0.00 sec)

व्याख्या: INTERVAL 1 YEAR केवल तारीख भाग को बढ़ाता है। इसी तरह MONTH, DAY, HOUR आदि का उपयोग किया जा सकता है।

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

    UPDATE और DATE_ADD() से मौजूदा तारीखों में अंतराल जोड़ें मौजूदा तारीख कॉलम में वर्ष (या अन्य अंतराल) जोड़ने के लिए UPDATE के साथ DATE_ADD() का उपयोग करें। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable1984 ( ShippingDate date ); Query OK, 0 rows affected (0.00 sec) mysql> insert into

  1. - MySQL में GROUP BY से तारीखों के अनुसार रिकॉर्ड समूहित करें

    GROUP BY से ग्राहकवार न्यूनतम और अधिकतम शिपिंग तारीख प्राप्त करें ग्राहक नाम के अनुसार तारीखों को समूहित करके प्रत्येक ग्राहक की पहली और अंतिम शिपिंग तारीख पाएं। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable2002 ( CustomerName varchar(20), CustomerShippingDate datetime ); Query OK, 0 ro

  1. - MySQL में केवल विशिष्ट रिकॉर्ड की सूची को ASC क्रम में प्रदर्शित करें

    समाधान ORDER BY CASE स्टेटमेंट का उपयोग करके कस्टम क्रम लागू करें। उदाहरण टेबल बनाएं: INSERT INTO DemoTable2039 VALUES (John Doe), (John Smith), (Chris Brown), (Adam Smith), (David Miller); कस्टम क्रम क्वेरी Smith वाले नामों को अंत में रखें, फिर वर्णानुक्रम क्रम: ORDER BY CASE WHEN Name LIKE %Sm