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

MySQL में ठीक पिछले 7 दिनों के डेटाटाइम रिकॉर्ड प्राप्त करें

INTERVAL के साथ सापेक्ष तिथि फ़िल्टरिंग

वर्तमान तिथि से ठीक 7 दिन पहले की तिथि वाले रिकॉर्ड प्राप्त करने के लिए DATE() और INTERVAL का उपयोग करें।

टेबल और डेटा (मान लें वर्तमान तिथि 2019-08-23 है)

mysql> CREATE TABLE DemoTable (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    AdmissionDate DATETIME
);
Query OK, 0 rows affected (0.83 sec)
mysql> INSERT INTO DemoTable(AdmissionDate) VALUES('2019-01-23');
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO DemoTable(AdmissionDate) VALUES('2019-08-15');
Query OK, 1 row affected (0.22 sec)
mysql> INSERT INTO DemoTable(AdmissionDate) VALUES('2019-08-16');
Query OK, 1 row affected (0.23 sec)
mysql> INSERT INTO DemoTable(AdmissionDate) VALUES('2019-08-24');
Query OK, 1 row affected (0.14 sec)

सभी रिकॉर्ड

mysql> SELECT * FROM DemoTable;
+----+---------------------+
| Id | AdmissionDate       |
+----+---------------------+
| 1  | 2019-01-23 00:00:00 |
| 2  | 2019-08-15 00:00:00 |
| 3  | 2019-08-16 00:00:00 |
| 4  | 2019-08-24 00:00:00 |
+----+---------------------+
4 rows in set (0.00 sec)

ठीक 7 दिन पहले (2019-08-16) के रिकॉर्ड

mysql> SELECT * FROM DemoTable 
    WHERE DATE(AdmissionDate) = CURDATE() - INTERVAL 7 DAY;

परिणाम:

+----+---------------------+
| Id | AdmissionDate       |
+----+---------------------+
| 3  | 2019-08-16 00:00:00 |
+----+---------------------+
1 row in set (0.04 sec)

व्याख्या: DATE(AdmissionDate) केवल तिथि भाग निकालता है। CURDATE() - INTERVAL 7 DAY वर्तमान तिथि से 7 दिन घटाता है। दोनों की तुलना करके ठीक उस तिथि के रिकॉर्ड मिलते हैं।

रेंज के लिए: WHERE AdmissionDate BETWEEN CURDATE() - INTERVAL 7 DAY AND CURDATE() पिछले 7 दिनों की सभी पंक्तियां देगा।

  1. - महीनों की एक श्रृंखला से रिकॉर्ड प्राप्त करने का MySQL क्वेरी?

    आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable1795 ( Name varchar(20), DueDate date ); Query OK, 0 rows affected (0.00 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysql> insert into DemoTable1795 values(John,2018-07-21); Query OK, 1 row affected (0.00 sec)

  1. - MySQL में DATE_SUB और INTERVAL से 15 दिन पुराने रिकॉर्ड प्राप्त करें

    वर्तमान दिनांक से निश्चित अंतराल (जैसे 15 दिन) पहले की तारीख वाले रिकॉर्ड प्राप्त करने के लिए DATE_SUB() और INTERVAL का उपयोग करें। टेबल बनाएं mysql> CREATE TABLE DemoTable1845 ( ArrivalDate DATE ); डेटा डालें mysql> INSERT INTO DemoTable1845 VALUES(2019-12-02); mysql> INSERT INTO Dem

  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