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

MySQL में एक तिथि से वर्ष और महीना कैसे प्राप्त करें

समस्या:

आप किसी दिए गए दिनांक से वर्ष और माह को MySQL डेटाबेस में प्राप्त करना चाहते हैं।

उदाहरण:

हमारे डेटाबेस में dates कॉलम में डेटा के साथ id और date

<थ>तारीख
आईडी
1 2008-04-21
2 1987-12-14

आइए year को निकालें और month तारीख से।

समाधान 1:

SELECT
EXTRACT(YEAR FROM date) AS year,
EXTRACT(MONTH FROM date) AS month
FROM dates;

नतीजा यह है:

वर्ष माह
2008 4
1987 12

चर्चा:

साल और महीने के कॉलम पाने के लिए, EXTRACT(part FROM date) . का इस्तेमाल करें समारोह। इस समाधान में, भाग तर्क को YEAR . से बदल दिया जाता है और MONTH year पाने के लिए और month अलग से, प्रत्येक अपने स्वयं के कॉलम में।

आप EXTRACT() . के बारे में अधिक जान सकते हैं आधिकारिक MySQL दस्तावेज़ में।

समाधान 2:

SELECT
EXTRACT(YEAR_MONTH FROM date) AS year_and_month
FROM dates;

नतीजा यह है:

वर्ष_और_माह
200804
198712

चर्चा:

यह समाधान बिल्कुल पिछले वाले की तरह काम करता है, लेकिन YEAR_MONTH वर्ष और महीने को अलग-अलग प्राप्त करने के बजाय एक कॉलम में एक साथ प्राप्त करने के लिए उपयोग किया जाता है। ध्यान दें कि साल और महीने के मान एक दूसरे से अलग नहीं होते हैं।

समाधान 3:

SELECT
YEAR(date) AS year,
MONTH(date) AS month
FROM dates;

नतीजा यह है:

वर्ष माह
2008 4
1987 12

चर्चा:

इस बार, YEAR() और MONTH() फ़ंक्शन का उपयोग दो कॉलम बनाने के लिए किया जाता है। YEAR() वर्ष देता है और MONTH() महीने को एक संख्या के रूप में लौटाता है।

समाधान 4:

SELECT
YEAR(date) AS year,
MONTHNAME(date) AS month
FROM dates;

नतीजा यह है:

वर्ष माह
2008 अप्रैल
1987 दिसंबर

चर्चा:

महीने का नाम जानने के लिए MONTHNAME() . का इस्तेमाल करें समारोह। परिणाम महीने की संख्या के बजाय महीने का नाम प्रदर्शित करता है।

समाधान 5:

SELECT
DATE_FORMAT(date, '%Y-%m') AS year_and_month
FROM dates;

नतीजा यह है:

वर्ष_और_माह
2008-04
1987-12

चर्चा:

DATE_FORMAT() का उपयोग करें date प्रदर्शित करने के लिए कार्य करें एक विशिष्ट प्रारूप में मान। इसमें date का समय लगता है पहले तर्क के रूप में और दूसरे तर्क के रूप में वांछित दिनांक प्रारूप का वर्णन करने वाली एक स्ट्रिंग। हमारे मामले में, स्ट्रिंग '%Y-%m ', %Y वर्ष लौटाता है, ' - ' विभाजक के रूप में प्रयोग किया जाता है, और %m महीने को संख्यात्मक रूप से लौटाता है (इसे %M . से बदला जा सकता है महीने का नाम पाने के लिए)।

आप DATE_FORMAT() के बारे में अधिक जान सकते हैं आधिकारिक 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. GUI का उपयोग करके MySQL कार्यक्षेत्र में उपयोगकर्ता विशेषाधिकारों की जाँच कैसे करें

  2. चेतावनी:हेडर जानकारी को संशोधित नहीं कर सकता - हेडर पहले ही त्रुटि से भेजे गए हैं

  3. कमांड लाइन से एक mysql डेटाबेस को प्लेनटेक्स्ट (CSV) बैकअप में डंप करें

  4. MySQL में दिन, महीना और वर्ष लौटाएं

  5. GROUP_BYs के दो बाएं जॉइन में से GROUP_CONCAT से अजीब डुप्लिकेट व्यवहार