PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

PostgreSQL का उपयोग करके पिछले 24 घंटों के रिकॉर्ड का चयन कैसे करें

कभी-कभी आपको रिपोर्टिंग और विश्लेषण के लिए पिछले 24 घंटों के रिकॉर्ड प्राप्त करने या पिछले 24 घंटों से पंक्तियों का चयन करने की आवश्यकता हो सकती है। यहां बताया गया है कि PostgreSQL का उपयोग करके पिछले 24 घंटों के रिकॉर्ड कैसे चुनें।


PostgreSQL में पिछले 24 घंटों के रिकॉर्ड प्राप्त करें

यहाँ PostgreSQL में पिछले 24 घंटों से रिकॉर्ड प्राप्त करने के लिए SQL क्वेरी है। मान लें कि आपके पास निम्न तालिका है बिक्री(order_date, राशि)

postgres-# create table sales(order_date timestamp, amount int);

postgres-# insert into sales(order_date,amount) 
     values('2020-06-07 01:00:00',200),
     ('2020-06-07 02:30:00',350),
     ('2020-06-07 04:40:00',410),
     ('2020-06-07 12:10:00',600),
     ('2020-06-07 15:00:00',300),
     ('2020-06-07 18:55:00',450),
     ('2020-06-07 21:00:00',1200),
     ('2020-06-08 03:00:00',800),
     ('2020-06-08 05:30:00',900),
     ('2020-06-08 07:20:00',100),
     ('2020-06-08 10:10:00',250),
     ('2020-06-08 12:05:00',300),
     ('2020-06-08 13:30:00',200);

postgres-# select * from sales;
+---------------------+--------+
| order_date          | amount |
+---------------------+--------+
| 2020-06-07 01:00:00 |    200 |
| 2020-06-07 02:30:00 |    350 |
| 2020-06-07 04:40:00 |    410 |
| 2020-06-07 12:10:00 |    600 |
| 2020-06-07 15:00:00 |    300 |
| 2020-06-07 18:55:00 |    450 |
| 2020-06-07 21:00:00 |   1200 |
| 2020-06-08 03:00:00 |    800 |
| 2020-06-08 05:30:00 |    900 |
| 2020-06-08 07:20:00 |    100 |
| 2020-06-08 10:10:00 |    250 |
| 2020-06-08 12:05:00 |    300 |
| 2020-06-08 13:30:00 |    200 |
+---------------------+--------+

बोनस पढ़ें :PostgreSQL में अधिकतम कनेक्शन कैसे बढ़ाएं


PostgreSQL में पिछले 24 घंटों की पंक्तियाँ प्राप्त करें

PostgreSQL में पिछले 24 घंटों के रिकॉर्ड प्राप्त करने के लिए SQL क्वेरी यहां दी गई है।

postgres-# select * from sales
       where order_date > now() - interval '24 hours';
+---------------------+--------+
| order_date          | amount |
+---------------------+--------+
| 2020-06-07 15:00:00 |    300 |
| 2020-06-07 18:55:00 |    450 |
| 2020-06-07 21:00:00 |   1200 |
| 2020-06-08 03:00:00 |    800 |
| 2020-06-08 05:30:00 |    900 |
| 2020-06-08 07:20:00 |    100 |
| 2020-06-08 10:10:00 |    250 |
| 2020-06-08 12:05:00 |    300 |
| 2020-06-08 13:30:00 |    200 |
+---------------------+--------+

उपरोक्त SQL क्वेरी में, हम PostgreSQL सिस्टम फ़ंक्शन का उपयोग करते हैं now() वर्तमान डेटाटाइम प्राप्त करने के लिए। फिर हम उन पंक्तियों को चुनने के लिए INTERVAL क्लॉज का उपयोग करते हैं जहां order_date वर्तमान दिनांक समय के पिछले 24 घंटों के भीतर आता है।

बोनस पढ़ें :PostgreSQL प्रदर्शन ट्यूनिंग युक्तियाँ

आप समय अंतराल को घंटों के बजाय दिनों में भी निर्दिष्ट कर सकते हैं।

postgres-# select * from sales
     where order_date > now() - interval '1 day';
+---------------------+--------+
| order_date          | amount |
+---------------------+--------+
| 2020-06-07 15:00:00 |    300 |
| 2020-06-07 18:55:00 |    450 |
| 2020-06-07 21:00:00 |   1200 |
| 2020-06-08 03:00:00 |    800 |
| 2020-06-08 05:30:00 |    900 |
| 2020-06-08 07:20:00 |    100 |
| 2020-06-08 10:10:00 |    250 |
| 2020-06-08 12:05:00 |    300 |
| 2020-06-08 13:30:00 |    200 |
+---------------------+--------+

बोनस पढ़ें :शीर्ष 5 PostgreSQL क्वेरी निगरानी उपकरण

यदि आप केवल वर्तमान दिन के रिकॉर्ड चुनना चाहते हैं, न कि पिछले 24 घंटों के लिए, तो निम्न क्वेरी का उपयोग करें।

postgres-# select * from sales
      where date_trunc('date',order_date) = current_date;
+---------------------+--------+
| order_date          | amount |
+---------------------+--------+
| 2020-06-08 03:00:00 |    800 |
| 2020-06-08 05:30:00 |    900 |
| 2020-06-08 07:20:00 |    100 |
| 2020-06-08 10:10:00 |    250 |
| 2020-06-08 12:05:00 |    300 |
| 2020-06-08 13:30:00 |    200 |
+---------------------+--------+

उपरोक्त क्वेरी में, आपको पंक्तियाँ केवल वर्तमान तिथि मिलेंगी, न कि पिछले 24 घंटों में। हम केवल उन पंक्तियों का चयन करने के लिए DATE_TRUNCT फ़ंक्शन का उपयोग करते हैं जहां ऑर्डर_डेट का दिनांक मान CURRENT_DATE सिस्टम चर के दिनांक मान के समान है, अर्थात वर्तमान दिनांक।

Ubiq मिनटों में डेटा की कल्पना करना और रीयल-टाइम डैशबोर्ड में मॉनिटर करना आसान बनाता है। इसे आज ही आजमाएं!

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. psql में लंबवत रूप से चुनिंदा परिणाम प्रदर्शित करें, जैसा कि MySQL के \G . द्वारा किया जाता है

  2. Slony-I में स्विचओवर/स्विचबैक PostgreSQL के प्रमुख संस्करणों को अपग्रेड करते समय 8.4.x/9.3.x

  3. पासवर्ड के बिना psql कमांड के साथ बैच फ़ाइल चलाएँ

  4. आर में int16/uint16 में PostgreSQL बाइटिया कॉलम हेक्स को डीकोड कैसे करें?

  5. वे मान खोजें जिनमें PostgreSQL में संख्याएँ नहीं हैं