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

MySQL में दो तिथियों के बीच दिनों की संख्या कैसे खोजें

समस्या:

आप MySQL डेटाबेस में दो तिथियों के बीच, दिनों में, अंतर प्राप्त करना चाहते हैं।

उदाहरण:

हमारे डेटाबेस में food कॉलम में डेटा के साथ id , name , purchase_date , और expiration_date

<थ>नाम <थ>खरीदारी_तिथि <थ>समाप्ति_तिथि
आईडी
1 रोटी 2019-07-20 2019-08-22
2 मक्खन 2018-07-30 2019-08-10
3 दूध 2019-01-12 2019-01-13
4 दही 2019-02-25 2019-02-24

प्रत्येक खाद्य उत्पाद के लिए, आइए उत्पाद का नाम और उसकी समाप्ति और खरीद तिथियों के बीच के दिनों की संख्या प्राप्त करें।

समाधान:

हम DATEDIFF() . का उपयोग करेंगे समारोह। यहां वह प्रश्न है जो आप लिखेंगे:

SELECT
  name,
  DATEDIFF(expiration_date, purchase_date) AS days
FROM food;

ये रहा क्वेरी का नतीजा:

नाम दिन
रोटी 33
मक्खन 376
दूध 1
दही -1

चर्चा:

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

  1. अंतिम तिथि। (हमारे उदाहरण में, यह expiration_date है कॉलम।)
  2. प्रारंभ तिथि। (हमारे उदाहरण में, यह purchase_date है कॉलम।)

ये तर्क दिनांक/डेटाटाइम मान, दिनांक/डेटाटाइम मान लौटाने वाले भाव, या डेटाटाइम या दिनांक डेटा प्रकार के कॉलम हो सकते हैं।

यह फ़ंक्शन समाप्ति तिथि से प्रारंभ तिथि घटाता है और पूर्णांक के रूप में दिनों की संख्या देता है। हमारे उदाहरण में, मक्खन '2018-07-30' को खरीदा गया था, लेकिन इसकी समाप्ति तिथि '2019-08-10' थी; खरीदने के बाद इसे 376 दिनों तक खाया जा सकता था। ध्यान दें कि दही एक पुराने उत्पाद के रूप में खरीदा गया था:दिनों में अंतर -1 है और इसकी खरीद तिथि इसकी समाप्ति तिथि के बाद की है।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL डेटाबेस से कनेक्ट करना

  2. ClusterControl के साथ MySQL के प्रदर्शन की निगरानी करना

  3. PHP/MYSQL में एक के रूप में दो mysql प्रश्नों को कैसे निष्पादित करें?

  4. mysql को mysqli में कैसे बदलें?

  5. node.js mysql त्रुटि:ECONNREFUSED