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

MySQL में DATEDIFF() से एक सप्ताह से पुराने रिकॉर्ड्स चुनना

MySQL में वर्तमान तिथि से एक सप्ताह (7 दिन) से पुराने रिकॉर्ड्स चुनने के लिए DATEDIFF() फ़ंक्शन का उपयोग किया जाता है। यह दो तिथियों के बीच दिनों का अंतर लौटाता है।

वर्तमान तिथि जांचना

mysql> SELECT NOW();
+---------------------+
| now()               |
+---------------------+
| 2019-06-09 19:15:56 |
+---------------------+

उदाहरण के लिए टेबल बनाना

mysql> CREATE TABLE DemoTable (
    ShippingDate DATETIME
);

डेटा डालना

mysql> INSERT INTO DemoTable VALUES('2019-06-01'), ('2019-06-02'), ('2019-06-14'), ('2019-05-21');

सभी रिकॉर्ड देखना

mysql> SELECT * FROM DemoTable;

आउटपुट

+---------------------+
| ShippingDate        |
+---------------------+
| 2019-06-01 00:00:00 |
| 2019-06-02 00:00:00 |
| 2019-06-14 00:00:00 |
| 2019-05-21 00:00:00 |
+---------------------+

7 दिन से पुराने रिकॉर्ड्स चुनना

mysql> SELECT * FROM DemoTable WHERE DATEDIFF(NOW(), ShippingDate) > 7;

आउटपुट

+---------------------+
| ShippingDate        |
+---------------------+
| 2019-06-01 00:00:00 |
| 2019-05-21 00:00:00 |
+---------------------+

नोट: DATEDIFF() केवल तिथि भाग पर विचार करता है, समय भाग को अनदेखा करता है। बेहतर प्रदर्शन के लिए इंडेक्स्ड कॉलम पर ShippingDate < DATE_SUB(NOW(), INTERVAL 7 DAY) का उपयोग करें।

  1. - MySQL में कई पंक्तियाँ प्रभावी ढंग से चुनना

    इंडेक्स और IN() क्लॉज से कुशल पंक्ति चयन प्राइमरी की या इंडेक्स पर IN() क्लॉज का उपयोग करके कई विशिष्ट आईडी की पंक्तियाँ एक क्वेरी में कुशलता से प्राप्त करें। तालिका और इंडेक्स CREATE INDEX id_index ON DemoTable1501(Id); डेटा डालना (220, www.gmail.com), (350, www.youtube.com); कुशल चयन क्वेरी

  1. - MySQL में पंक्तियों को एक बैच में एक समय पर चुनना

    LIMIT और OFFSET से पेजिनेशन/बैच प्रोसेसिंग LIMIT offset, count या LIMIT count OFFSET offset का उपयोग करके परिणाम सेट को बैच में विभाजित करें। तालिका और डेटा (David), (Robert), (Adam), (John), (Jace); क्वेरी: 5वीं से 8वीं पंक्ति (बैच आकार 4, ऑफसेट 4) SELECT * FROM DemoTable1514 LIMIT 4 OFFSET 4;

  1. - MySQL में FROM_UNIXTIME और NOW से 1 दिन से पुराने टाइमस्टैम्प वाली पंक्तियाँ प्राप्त करें

    सिंटैक्स select * from yourTable where from_unixtime(unixTimestampCol) < now() - interval 1 day; उदाहरण: यूनिक्स टाइमस्टैम्प कॉलम insert into demo75 values(unix_timestamp(2020-01-10)), (unix_timestamp(2020-11-19)), (unix_timestamp(2020-12-18)), (unix_timestamp(2020-11-10)); क्वेरी और परिणाम (मान