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

मारियाडीबी में DATEDIFF () कैसे काम करता है

मारियाडीबी में, DATEDIFF() एक अंतर्निहित दिनांक और समय फ़ंक्शन है जो दो तिथियों के बीच के दिनों में अंतर लौटाता है।

यह दो तर्कों को स्वीकार करता है, जिनमें से दोनों दिनांक या डेटाटाइम एक्सप्रेशन हैं। फिर यह दूसरी तारीख को पहली तारीख से घटा देता है।

सिंटैक्स

वाक्य रचना इस प्रकार है:

DATEDIFF(expr1,expr2)

इसके बाद यह expr1 - expr2 returns लौटाता है ।

उदाहरण

यहां एक उदाहरण दिया गया है:

SELECT DATEDIFF('2030-01-25', '2030-01-20');

परिणाम:

+--------------------------------------+
| DATEDIFF('2030-01-25', '2030-01-20') |
+--------------------------------------+
|                                    5 |
+--------------------------------------+

यहाँ यह फिर से है, लेकिन तारीखों की अदला-बदली के साथ:

SELECT DATEDIFF('2030-01-20', '2030-01-25');

परिणाम:

+--------------------------------------+
| DATEDIFF('2030-01-20', '2030-01-25') |
+--------------------------------------+
|                                   -5 |
+--------------------------------------+

डेटाटाइम मान

यहां एक उदाहरण दिया गया है जो डेटाटाइम मानों का उपयोग करता है:

SELECT DATEDIFF('2030-01-25 00:00:00', '2030-01-20 23:59:59');

परिणाम:

+--------------------------------------------------------+
| DATEDIFF('2030-01-25 00:00:00', '2030-01-20 23:59:59') |
+--------------------------------------------------------+
|                                                      5 |
+--------------------------------------------------------+

यहां एक और उदाहरण दिया गया है:

SELECT DATEDIFF('2030-01-25 00:00:00', '2030-01-25 23:59:59');

परिणाम:

+--------------------------------------------------------+
| DATEDIFF('2030-01-25 00:00:00', '2030-01-25 23:59:59') |
+--------------------------------------------------------+
|                                                      0 |
+--------------------------------------------------------+

इस मामले में, भले ही यह लगभग एक पूरा दिन था, यह काफी नहीं था, और इसलिए परिणाम 0 है ।

वर्तमान तिथि

यहां, हम NOW() pass पास करते हैं दूसरे तर्क के रूप में:

SELECT 
    NOW(),
    DATEDIFF('2030-01-20', NOW());

परिणाम:

+---------------------+-------------------------------+
| NOW()               | DATEDIFF('2030-01-20', NOW()) |
+---------------------+-------------------------------+
| 2021-05-10 10:03:08 |                          3177 |
+---------------------+-------------------------------+

इस मामले में अब और दूसरी तारीख के बीच 3,177 दिन हैं।

अमान्य तर्क

जब कोई अमान्य तर्क पारित किया जाता है, DATEDIFF() रिटर्न null :

SELECT DATEDIFF('Homer', 'Simpson');

परिणाम:

+------------------------------+
| DATEDIFF('Homer', 'Simpson') |
+------------------------------+
|                         NULL |
+------------------------------+

अनुपलब्ध तर्क

कॉलिंग DATEDIFF() तर्कों की गलत संख्या, या कोई तर्क पारित किए बिना, एक त्रुटि उत्पन्न होती है:

SELECT DATEDIFF();

परिणाम:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'DATEDIFF'

और:

SELECT DATEDIFF('2030-05-21');

परिणाम:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'DATEDIFF'

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मारियाडीबी डेटाबेस में सभी दृश्यों को सूचीबद्ध करने के 4 तरीके

  2. मारियाडीबी सर्वर 10.0.33 अब उपलब्ध है

  3. MySQL/MariaDB/Percona सर्वर के लिए अपग्रेड प्रक्रिया का स्वचालित परीक्षण

  4. मारियाडीबी एलटीआरआईएम () बनाम एलटीआरआईएम_ओआरएसीएलई ():क्या अंतर है?

  5. कैसे सीलिंग () मारियाडीबी में काम करता है