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

मारियाडीबी में एक तिथि से सप्ताह संख्या निकालने के लिए 5 कार्य

नीचे 5 कार्य हैं जो आपको मारियाडीबी में किसी तिथि से सप्ताह संख्या वापस करने में सक्षम बनाते हैं। चार केवल सप्ताह में लौटते हैं, और एक सप्ताह और वर्ष दोनों को मिलाकर लौटाता है।

WEEK() समारोह

WEEK() फ़ंक्शन किसी दिए गए दिनांक के लिए सप्ताह लौटाता है।

उदाहरण:

SELECT WEEK('2023-07-25');

परिणाम:

+--------------------+
| WEEK('2023-07-25') |
+--------------------+
|                 30 |
+--------------------+

WEEK() फ़ंक्शन मोड निर्दिष्ट करने के लिए वैकल्पिक दूसरा तर्क स्वीकार करता है। इस फ़ंक्शन से आपको मिलने वाला वास्तविक परिणाम उपयोग किए जा रहे मोड पर निर्भर करेगा। यदि मोड तर्क को छोड़ दिया जाता है, तो default_week_format . का मान सिस्टम चर का उपयोग किया जाता है।

देखें कैसे WEEK() प्रत्येक के मोड और उदाहरणों पर अधिक जानकारी के लिए MariaDB में काम करता है।

EXTRACT() समारोह

EXTRACT () फ़ंक्शन आपको दिनांक से एक निर्दिष्ट इकाई निकालने की अनुमति देता है। इसलिए, आप इसका उपयोग तिथि से सप्ताह (साथ ही अन्य इकाइयों) को निकालने के लिए कर सकते हैं।

उदाहरण:

SELECT EXTRACT(WEEK FROM '2023-07-25');

परिणाम:

+---------------------------------+
| EXTRACT(WEEK FROM '2023-07-25') |
+---------------------------------+
|                              30 |
+---------------------------------+

DATE_FORMAT() समारोह

DATE_FORMAT() फ़ंक्शन आपको प्रारूप स्ट्रिंग के आधार पर दिनांक को प्रारूपित करने की अनुमति देता है। प्रारूप स्ट्रिंग निर्दिष्ट करती है कि दिनांक को कैसे स्वरूपित किया जाना चाहिए।

इसलिए आप इस फ़ंक्शन का उपयोग तिथि से सप्ताह (साथ ही किसी अन्य इकाई) को वापस करने के लिए कर सकते हैं। सप्ताह की संख्या को वापस करने के लिए कई विकल्प हैं, यह इस बात पर निर्भर करता है कि सप्ताह किस दिन शुरू होता है, आदि।

यहां एक उदाहरण दिया गया है जो सप्ताह को विभिन्न रूपों में लौटाता है:

SELECT 
    DATE_FORMAT('2023-01-01', '%U') AS "%U",
    DATE_FORMAT('2023-01-01', '%u') AS "%u",
    DATE_FORMAT('2023-01-01', '%V') AS "%V",
    DATE_FORMAT('2023-01-01', '%v') AS "%v";

परिणाम:

+------+------+------+------+
| %U   | %u   | %V   | %v   |
+------+------+------+------+
| 01   | 00   | 01   | 52   |
+------+------+------+------+

उनमें से प्रत्येक प्रारूप विनिर्देशक का विवरण यहां दिया गया है:

<थ>विवरण
प्रारूप विनिर्देशक
%U सप्ताह संख्या (00-53), जब सप्ताह का पहला दिन रविवार है।
%u सप्ताह संख्या (00-53), जब सप्ताह का पहला दिन सोमवार होता है।
%V सप्ताह संख्या (01-53), जब सप्ताह का पहला दिन रविवार है। %X . के साथ प्रयोग किया जाता है ।
%v सप्ताह संख्या (01-53), जब सप्ताह का पहला दिन सोमवार होता है। %x . के साथ प्रयोग किया जाता है ।

और यहां %X . का विवरण दिया गया है और %x जैसा कि उपरोक्त तालिका में बताया गया है:

<थ>विवरण
प्रारूप विनिर्देशक
%X 4 अंकों वाला वर्ष जब सप्ताह का पहला दिन रविवार होता है। %V . के साथ प्रयोग किया जाता है ।
%x 4 अंकों वाला वर्ष जब सप्ताह का पहला दिन सोमवार होता है। %v . के साथ प्रयोग किया जाता है ।

यदि आवश्यक हो तो हम वर्ष और सप्ताह को एक साथ वापस करने के लिए प्रारूप विनिर्देशों को जोड़ सकते हैं:

SELECT 
    DATE_FORMAT('2023-01-01', '%X, %V') AS "%X, %V",
    DATE_FORMAT('2023-01-01', '%x, %v') AS "%x, %v";

परिणाम:

+----------+----------+
| %X, %V   | %x, %v   |
+----------+----------+
| 2023, 01 | 2022, 52 |
+----------+----------+

ध्यान दें कि सप्ताह की संख्या हमेशा उपरोक्त उदाहरणों को प्रतिबिंबित नहीं करेगी - यह वास्तविक तिथि का उपयोग करने पर निर्भर करती है।

आइए तारीख को एक साल आगे बढ़ाते हैं:

SELECT 
    DATE_FORMAT('2024-01-01', '%U') AS "%U",
    DATE_FORMAT('2024-01-01', '%u') AS "%u",
    DATE_FORMAT('2024-01-01', '%V') AS "%V",
    DATE_FORMAT('2024-01-01', '%v') AS "%v";

परिणाम:

+------+------+------+------+
| %U   | %u   | %V   | %v   |
+------+------+------+------+
| 00   | 01   | 53   | 01   |
+------+------+------+------+

इस बार हमें परिणामों का एक अलग सेट मिला है।

जब हम वर्ष में आगे बढ़ते हैं तो यहां क्या होता है:

SELECT 
    DATE_FORMAT('2024-12-12', '%U') AS "%U",
    DATE_FORMAT('2024-12-12', '%u') AS "%u",
    DATE_FORMAT('2024-12-12', '%V') AS "%V",
    DATE_FORMAT('2024-12-12', '%v') AS "%v";

परिणाम:

+------+------+------+------+
| %U   | %u   | %V   | %v   |
+------+------+------+------+
| 49   | 50   | 49   | 50   |
+------+------+------+------+

जैसा कि आप देख सकते हैं, सप्ताह की संख्या लौटाना हमेशा उतना स्पष्ट नहीं होता जितना हम चाहते हैं।

DATE_FORMAT() के साथ उपयोग किए जा सकने वाले फ़ॉर्मेट स्ट्रिंग्स/विनिर्देशकों की पूरी सूची के लिए MariaDB फ़ॉर्मेट स्ट्रिंग्स देखें। ।

YEARWEEK() समारोह

और सप्ताह प्राप्त करना संभव है एक बार में वर्ष। YEARWEEK() फ़ंक्शन किसी दिए गए दिनांक के लिए वर्ष और सप्ताह लौटाता है।

उदाहरण:

SELECT YEARWEEK('2023-01-01');

परिणाम:

+------------------------+
| YEARWEEK('2023-01-01') |
+------------------------+
|                 202301 |
+------------------------+

परिणाम में वर्ष वर्ष के पहले और अंतिम सप्ताह के लिए दिनांक तर्क में वर्ष से भिन्न हो सकता है।

अगर हम एक साल आगे बढ़ते हैं तो क्या होता है:

SELECT YEARWEEK('2024-01-01');

परिणाम:

+------------------------+
| YEARWEEK('2024-01-01') |
+------------------------+
|                 202353 |
+------------------------+

जैसा कि WEEK() . के साथ है फ़ंक्शन, YEARWEEK() फ़ंक्शन मोड निर्दिष्ट करने के लिए वैकल्पिक दूसरा तर्क स्वीकार करता है। इस फ़ंक्शन से आपको मिलने वाला वास्तविक परिणाम उपयोग किए जा रहे मोड पर निर्भर करेगा। यदि मोड तर्क को छोड़ दिया जाता है, तो default_week_format . का मान सिस्टम चर का उपयोग किया जाता है।

देखें कैसे YEARWEEK() प्रत्येक के मोड और उदाहरणों पर अधिक जानकारी के लिए MariaDB में काम करता है।


  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 और MariaDB सर्वर के लिए लोकप्रिय डॉकर छवियां

  2. MySQL में अनुक्रमणिका को समझना:भाग तीन

  3. मारियाडीबी डेटाबेस में सभी दृश्यों को सूचीबद्ध करने के 4 तरीके

  4. कैसे सप्ताह () मारियाडीबी में काम करता है

  5. मारियाडीबी में "त्रुटि 1250 (42000):तालिका '...' को किसी एक चयन से ऑर्डर क्लॉज में इस्तेमाल नहीं किया जा सकता है" ठीक करें