मारियाडीबी में, DAYOFYEAR()
एक अंतर्निहित दिनांक और समय फ़ंक्शन है जो किसी दिए गए दिनांक से वर्ष का दिन लौटाता है।
यह एक तर्क को स्वीकार करता है, जिस तारीख से आप वर्ष का दिन निकालना चाहते हैं।
यह दिन को 1
. श्रेणी में एक संख्या के रूप में लौटाता है से 366
.
सिंटैक्स
वाक्य रचना इस प्रकार है:
DAYOFYEAR(date)
जहां date
वर्ष का दिन प्राप्त करने की तिथि है।
उदाहरण
यहां एक उदाहरण दिया गया है:
SELECT DAYOFYEAR('2030-12-25');
परिणाम:
+-------------------------+ | DAYOFYEAR('2030-12-25') | +-------------------------+ | 359 | +-------------------------+
डेटाटाइम मान
यह डेटाटाइम मानों के साथ भी काम करता है:
SELECT DAYOFYEAR('2030-02-01 10:30:45');
परिणाम:
+----------------------------------+ | DAYOFYEAR('2030-02-01 10:30:45') | +----------------------------------+ | 32 | +----------------------------------+
शून्य दिन
शून्य दिनों का परिणाम null
होता है .
उदाहरण:
SELECT DAYOFYEAR('2030-00-00');
परिणाम:
+-------------------------+ | DAYOFYEAR('2030-00-00') | +-------------------------+ | NULL | +-------------------------+
संख्यात्मक तिथियां
तिथियों को एक संख्या के रूप में पारित करना भी संभव है, जब तक कि यह एक तिथि के रूप में समझ में आता है।
उदाहरण
SELECT DAYOFYEAR(20301125);
परिणाम:
+---------------------+ | DAYOFYEAR(20301125) | +---------------------+ | 329 | +---------------------+
या निम्नलिखित भी (जो दो अंकों वाले वर्ष का उपयोग करता है):
SELECT DAYOFYEAR(301125);
परिणाम:
+-------------------+ | DAYOFYEAR(301125) | +-------------------+ | 329 | +-------------------+
लेकिन इसे एक तारीख के रूप में समझना चाहिए। अगर मैं दिन के हिस्से को अमान्य दिन में बढ़ा दूं तो क्या होगा:
SELECT DAYOFYEAR(20300135);
परिणाम:
+---------------------+ | DAYOFYEAR(20300135) | +---------------------+ | NULL | +---------------------+
अन्य सीमांकक
आप तिथि के लिए अन्य सीमांकक का उपयोग कर सकते हैं। जब तारीखों पर सीमांकक की बात आती है तो मारियाडीबी काफी क्षमाशील है। यहां कुछ मान्य उदाहरण दिए गए हैं:
SELECT
DAYOFYEAR('2030/06/25'),
DAYOFYEAR('2030,06,25'),
DAYOFYEAR('2030:06:25'),
DAYOFYEAR('2030;06!25');
परिणाम (ऊर्ध्वाधर आउटपुट का उपयोग करके):
DAYOFYEAR('2030/06/25'): 176 DAYOFYEAR('2030,06,25'): 176 DAYOFYEAR('2030:06:25'): 176 DAYOFYEAR('2030;06!25'): 176
वर्तमान तिथि
हम NOW()
pass पास कर सकते हैं वर्तमान तिथि का उपयोग करने के लिए दिनांक तर्क के रूप में:
SELECT
NOW(),
DAYOFYEAR(NOW());
परिणाम:
+---------------------+------------------+ | NOW() | DAYOFYEAR(NOW()) | +---------------------+------------------+ | 2021-05-16 09:05:57 | 136 | +---------------------+------------------+
अमान्य तर्क
जब कोई अमान्य तर्क पारित किया गया, DAYOFYEAR()
रिटर्न null
:
SELECT DAYOFYEAR('Friday');
परिणाम:
+---------------------+ | DAYOFYEAR('Friday') | +---------------------+ | NULL | +---------------------+
अनुपलब्ध तर्क
कॉलिंग DAYOFYEAR()
तर्कों की गलत संख्या के साथ, या कोई तर्क पारित किए बिना, एक त्रुटि उत्पन्न होती है:
SELECT DAYOFYEAR();
परिणाम:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'DAYOFYEAR'
और दूसरा उदाहरण:
SELECT DAYOFYEAR('2030-01-25', '2045-05-08');
परिणाम:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'DAYOFYEAR'