अधिकांश प्रमुख RDBMS में ऐसे कार्य होते हैं जो हमें डेटाटाइम मानों से दिन, महीने और वर्ष निकालने में सक्षम बनाते हैं।
कुछ RDBMS ऐसा करने के कई तरीके प्रदान करते हैं, और अन्य अधिक सीमित हैं। कुछ सबसे लोकप्रिय RDBMS में दिनांक मानों से दिन, माह और वर्ष निकालने के उदाहरण नीचे दिए गए हैं।
MySQL
MySQL के कई कार्य हैं जिनका उपयोग किसी तिथि से दिन, महीने और वर्ष निकालने के लिए किया जा सकता है। इनमें से एक है EXTRACT()
समारोह:
SELECT
EXTRACT(DAY FROM '2035-12-19') AS Day,
EXTRACT(MONTH FROM '2035-12-19') AS Month,
EXTRACT(YEAR FROM '2035-12-19') AS Year;
परिणाम:
+------+-------+------+ | Day | Month | Year | +------+-------+------+ | 19 | 12 | 2035 | +------+-------+------+
इस मामले में, मैंने प्रत्येक दिनांक भाग को अपने क्षेत्र में निकाला।
यदि आप चाहते हैं कि सभी दिनांक भागों को एक ही फ़ील्ड में लौटाया जाए, तो DATE_FORMAT()
फ़ंक्शन आपके लिए यह कर सकता है।
MySQL में फ़ंक्शन का एक समूह भी है जो किसी दिनांक से विशिष्ट दिनांक भागों को लौटाता है, जैसे DAY()
, MONTH()
, YEAR()
, आदि.
अधिक उदाहरणों के लिए MySQL में रिटर्न द डे, मंथ एंड ईयर देखें।
ओरेकल
Oracle में एक TO_CHAR()
है फ़ंक्शन जिसका उपयोग दिनांक भागों को अपने स्वयं के क्षेत्रों में, या सभी को एक ही फ़ील्ड में निकालने के लिए किया जा सकता है। यहां अलग-अलग क्षेत्रों में उन्हें वापस करने का एक उदाहरण दिया गया है:
SELECT
TO_CHAR(DATE '2035-09-26', 'Day') AS Day,
TO_CHAR(DATE '2035-09-26', 'DD') AS DD,
TO_CHAR(DATE '2035-09-26', 'Month') AS Month,
TO_CHAR(DATE '2035-09-26', 'YYYY') AS Year
FROM DUAL;
परिणाम:
DAY DD MONTH YEAR ____________ _____ ____________ _______ Wednesday 26 September 2035
इस फ़ंक्शन के साथ डेटाटाइम मानों को प्रारूपित करने के लिए उपयोग किए जा सकने वाले प्रारूप तत्वों की सूची के लिए Oracle में डेटाटाइम प्रारूप तत्वों की यह पूरी सूची देखें।
Oracle में एक EXTRACT()
भी है फ़ंक्शन जो उसी नाम के MySQL के फ़ंक्शन की तरह काम करता है।
एसक्यूएल सर्वर
SQL सर्वर में कार्यों की एक बड़ी श्रृंखला है जो दिन, महीने और वर्ष जैसे दिनांक भागों को वापस कर सकती है।
DATEPART()
फ़ंक्शन को विशेष रूप से किसी दिनांक के निर्दिष्ट भागों को वापस करने के लिए डिज़ाइन किया गया है:
DECLARE @date date = '2045-07-03';
SELECT
DATEPART(day, @date) AS DAY,
DATEPART(weekday, @date) AS WEEKDAY,
DATEPART(month, @date) AS MONTH,
DATEPART(year, @date) AS YEAR;
परिणाम:
+-------+-----------+---------+--------+ | DAY | WEEKDAY | MONTH | YEAR | |-------+-----------+---------+--------| | 3 | 2 | 7 | 2045 | +-------+-----------+---------+--------+
एक समान कार्य है DATENAME()
, जो एक स्ट्रिंग के रूप में दिन और महीने के नाम वापस कर सकता है।
SQL सर्वर में DAY()
. जैसे कार्य भी होते हैं , MONTH()
, YEAR()
, आदि जो एक विशिष्ट तिथि भाग लौटाते हैं।
और FORMAT()
को न भूलें फ़ंक्शन, जो सही है यदि आप सभी दिनांक भागों को एक ही फ़ील्ड में वापस करना चाहते हैं।
अधिक उदाहरणों के लिए SQL सर्वर में दिनांक से दिन, महीना और वर्ष प्राप्त करने के लिए 6 कार्य देखें।
PostgreSQL
PostgreSQL में कुछ फंक्शन हैं जो तारीखों से तारीख के हिस्से लौटा सकते हैं।
यहां DATE_PART()
का एक उदाहरण दिया गया है समारोह:
SELECT
DATE_PART('DAY', date '2035-10-30') AS "Day",
DATE_PART('DOW', date '2035-10-30') AS "DOW",
DATE_PART('DOY', date '2035-10-30') AS "DOY",
DATE_PART('MONTH', date '2035-10-30') AS "Month",
DATE_PART('YEAR', date '2035-10-30') AS "Year";
परिणाम:
Day | DOW | DOY | Month | Year -----+-----+-----+-------+------ 30 | 2 | 303 | 10 | 2035
PostgreSQL में एक EXTRACT()
भी है फ़ंक्शन जो मूल रूप से एक ही काम करता है, थोड़े अलग सिंटैक्स को छोड़कर।
और TO_CHAR()
फ़ंक्शन का उपयोग किया जा सकता है यदि आप एक ही फ़ील्ड में कई दिनांक भागों को वापस करना चाहते हैं।
SQLite
जब दिनांक और समय कार्यों की बात आती है तो SQLite अधिक सीमित होता है। हालांकि, आप अभी भी STRFTIME()
. का उपयोग कर सकते हैं फ़ंक्शन किसी दिनांक से दिन, माह और वर्ष निकालने के लिए:
SELECT STRFTIME('%d %m %Y', '2035-12-01');
परिणाम:
01 12 2035
इस उदाहरण में, मैंने एक ही फ़ील्ड में सभी दिनांक भागों को वापस कर दिया है। लेकिन यह जरूरी नहीं है। यदि आप चाहते हैं कि वे विभिन्न क्षेत्रों में वापस आएं, तो आप STRFTIME()
. पर कॉल कर सकते हैं कई बार, प्रत्येक एक अलग प्रारूप तत्व के साथ:
SELECT
strftime('%d', '2035-12-01') AS "Day",
strftime('%m', '2035-12-01') AS "Month",
strftime('%Y', '2035-12-01') AS "Year";
परिणाम:
Day Month Year --- ----- ---- 01 12 2035
मारियाडीबी
मारियाडीबी उन कार्यों का एक बड़ा चयन प्रदान करता है जो दिन, महीने और वर्ष को डेटाटाइम मान से वापस कर सकते हैं।
यहां DATE_FORMAT()
. का एक उदाहरण दिया गया है समारोह:
SELECT DATE_FORMAT('2023-07-25', '%W, %D %M %Y');
परिणाम:
+-------------------------------------------+ | DATE_FORMAT('2023-07-25', '%W, %D %M %Y') | +-------------------------------------------+ | Tuesday, 25th July 2023 | +-------------------------------------------+
वह फ़ंक्शन हमें एक ही फ़ील्ड में सभी दिनांक भागों को वापस करने की अनुमति देता है (हालांकि इसकी आवश्यकता नहीं है - आप DATE_FORMAT()
पर कॉल करके किसी भिन्न फ़ील्ड में प्रत्येक दिनांक भाग को आसानी से वापस कर सकते हैं। कई बार, हर बार एक अलग प्रारूप स्ट्रिंग के साथ)।
और कुछ अन्य लोगों की तरह, MariaDB में भी एक EXTRACT()
है फ़ंक्शन जो किसी दिए गए दिनांक भाग को निकालता है।
और प्रत्येक दिनांक भाग के लिए विशिष्ट कार्यों की एक विस्तृत श्रृंखला भी है, जैसे DAY()
, MONTH()
, YEAR()
, आदि
एक पूर्ण सूची के लिए मारियाडीबी में एक तिथि से दिन, महीना और वर्ष प्राप्त करने के लिए 11 कार्य देखें।