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

MySQL में ADDDATE () बनाम DATE_ADD ():क्या अंतर है?

MySQL का उपयोग करते समय, हमारे पास ADDDATE() . का उपयोग करने का विकल्प होता है और DATE_ADD() जब भी हम किसी दी गई तारीख में एक विशिष्ट समय अंतराल जोड़ना चाहते हैं तो कार्य करता है। ये दोनों कार्य एक ही काम करते हैं, लेकिन इनमें एक अंतर है।

यह लेख ADDDATE() . के बीच के अंतर को दर्शाता है और DATE_ADD() MySQL में।

सिंटैक्स

इन दो कार्यों के बीच का अंतर उनके वाक्यविन्यास में है। एक फ़ंक्शन दो अलग-अलग रूपों की अनुमति देता है, जबकि दूसरा केवल एक रूप के लिए अनुमति देता है।

DATE_ADD()

DATE_ADD() वाक्य रचना इस प्रकार है।

DATE_ADD(date,INTERVAL expr unit)

यह दिनांक मान को स्वीकार करता है, उसके बाद INTERVAL कीवर्ड और एक्सप्रेशन और यूनिट जिसके लिए पहले तर्क द्वारा दी गई तारीख में जोड़ना है।

जोड़ें ()

ADDDATE() वाक्यविन्यास दो रूपों के लिए अनुमति देता है। आप निम्न में से किसी भी प्रपत्र का उपयोग कर सकते हैं।

ADDDATE(date,INTERVAL expr unit)

या

ADDDATE(expr,days)

पहला फ़ॉर्म बिल्कुल DATE_ADD() . जैसा ही है वाक्य - विन्यास। वास्तव में, इस सिंटैक्स का उपयोग करते समय, ADDDATE() फ़ंक्शन DATE_ADD() का पर्याय है ।

हालाँकि, यह वाक्य रचना का दूसरा रूप है जो दो कार्यों को अलग करता है। यह दूसरा फ़ॉर्म केवल ADDDATE() . का उपयोग करते समय ही उपलब्ध होता है फ़ंक्शन, और यह आपको तिथि में जोड़ने के लिए दिनों की संख्या निर्दिष्ट करने के लिए एक शॉर्टहैंड तरीके का उपयोग करने की अनुमति देता है।

उदाहरण

दो रूपों के बीच अंतर को प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है।

SET @date = '2020-10-01';
SELECT 
    DATE_ADD(@date, INTERVAL 2 DAY) AS 'DATE_ADD',
    ADDDATE(@date, INTERVAL 2 DAY) AS 'ADDDATE 1',
    ADDDATE(@date, 2) AS 'ADDDATE 2';

परिणाम:

+------------+------------+------------+
| DATE_ADD   | ADDDATE 1  | ADDDATE 2  |
+------------+------------+------------+
| 2020-10-03 | 2020-10-03 | 2020-10-03 |
+------------+------------+------------+

लेकिन अगर हम ADD_DATE() पर दूसरे फॉर्म का उपयोग करने का प्रयास करते हैं , हमें एक त्रुटि मिलती है:

SET @date = '2020-10-01';
SELECT DATE_ADD(@date, 2) AS 'DATE_ADD 2';

परिणाम:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '2) AS 'DATE_ADD 2'' at line 1
पर '2) AS 'DATE_ADD 2'' के पास उपयोग करने के लिए सही सिंटैक्स के लिए आपके MySQL सर्वर संस्करण से संबंधित मैनुअल की जाँच करें।

ऐसा इसलिए है क्योंकि यह फ़ंक्शन उस सिंटैक्स का समर्थन नहीं करता है।


  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. अल्पविराम से अलग जुड़ने और MySQL में सिंटैक्स पर जुड़ने में क्या अंतर है?

  3. sql का उपयोग करके प्रकार के समय की गणना करें

  4. गंभीर त्रुटि:ध्यान में न आया त्रुटि:अपरिभाषित समारोह के लिए कॉल mysql_connect ()

  5. PostgreSQL बनाम MySQL:कौन सा सर्वश्रेष्ठ है?