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

मैं एक प्रश्न में MYSQL में किसी तिथि में दिन कैसे जोड़ सकता हूं?

ऐसा लगता है कि आप ऐसी पंक्तियाँ चाहते हैं जहाँ end_date पांच दिन पहले के बाद का है।

इसे पाने का सबसे अच्छा तरीका है

 WHERE end_date >= CURDATE() - INTERVAL 5 DAY

तिथियों में पूर्णांक जोड़ने का व्यवसाय MySQL में काम नहीं करता है (यह एक Oracle चीज़ है)। तो आपको INTERVAL n unit . का उपयोग करने की आवश्यकता है वाक्य रचना।

आप देखेंगे कि ऊपर मेरा WHERE क्लॉज कार्यात्मक रूप से

. के बराबर है
 WHERE DATE(end_date) + INTERVAL 5 DAY >= DATE(NOW())

लेकिन, पहला सूत्रीकरण दो कारणों से दूसरे से बेहतर है।

  1. यदि आप end_date का उल्लेख करते हैं WHERE क्लॉज में इसे कंप्यूटेशन में लपेटे बिना, आपकी क्वेरी उस कॉलम पर एक इंडेक्स का फायदा उठा सकती है और तेजी से चल सकती है।
  2. DATE(NOW()) और CURDATE() दोनों आज (मध्यरात्रि) के पहले क्षण का उल्लेख करते हैं। लेकिन CURDATE() थोड़ा आसान है।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. LIKE ऑपरेटर के साथ चयन कथन में MySQL केस

  2. दिनांक समय समूह दिनांक और घंटे के अनुसार

  3. git और phpfog के साथ Php एकाधिक डीबी वातावरण

  4. mysql विभिन्न डेटाबेस में पुनर्स्थापित करें

  5. SQL के रूप में तालिका बनाएँ के साथ MySQL, MariaDB, Oracle, PostgreSQL, DB2 और SQLite में डुप्लिकेट, कॉपी या बैकअप तालिकाएँ