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

3 कार्य जो PostgreSQL में एक तिथि से दिन, महीना और वर्ष प्राप्त करते हैं

PostgreSQL हमें तारीख से दिन, महीने और साल प्राप्त करने के कई तरीके प्रदान करता है।

तीन कार्य जो तुरंत दिमाग में आते हैं वे हैं; DATE_PART() , EXTRACT() , और TO_CHAR()

EXTRACT()

EXTRACT() फ़ंक्शन उप-क्षेत्रों जैसे वर्ष, माह, घंटा, या मिनट, दिनांक/समय मान से भाग प्राप्त करता है।

उदाहरण:

SELECT EXTRACT(YEAR FROM date '2035-10-30');

परिणाम:

2035

हम इस फ़ंक्शन के लिए तीन अलग-अलग कॉल करके अलग-अलग क्षेत्रों में अलग-अलग दिनांक भागों को वापस कर सकते हैं:

SELECT 
    EXTRACT(DAY FROM date '2035-10-30') AS "Day",
    EXTRACT(DOW FROM date '2035-10-30') AS "DOW",
    EXTRACT(DOY FROM date '2035-10-30') AS "DOY",
    EXTRACT(MONTH FROM date '2035-10-30') AS "Month",
    EXTRACT(YEAR FROM date '2035-10-30') AS "Year";

परिणाम:

 Day | DOW | DOY | Month | Year 
-----+-----+-----+-------+------
  30 |   2 | 303 |    10 | 2035

यहां, मैंने तारीख से महीने का दिन, सप्ताह का दिन, वर्ष का दिन, महीना और वर्ष लौटा दिया।

अधिक उदाहरणों के लिए PostgreSQL में कैसे निकालें () काम करता है, और इस फ़ंक्शन द्वारा वापस किए जा सकने वाले फ़ील्ड नामों की एक सूची देखें।

DATE_PART()

DATE_PART() फ़ंक्शन EXTRACT() . के बराबर है , लेकिन थोड़े अलग सिंटैक्स के साथ।

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

इस फ़ंक्शन के लिए आवश्यक है कि पहला तर्क एक स्ट्रिंग के रूप में प्रदान किया जाए, और अल्पविराम दो तर्कों को FROM के बजाय अलग करता है कीवर्ड।

TO_CHAR()

TO_CHAR() फ़ंक्शन अधिक लचीला है, जिसमें इसका उपयोग विभिन्न प्रकार के आउटपुट प्रदान करने के लिए किया जा सकता है। उदाहरण के लिए, हम इस फ़ंक्शन का उपयोग दिन, महीने और वर्ष सभी को एक फ़ील्ड में वापस करने के लिए कर सकते हैं:

SELECT TO_CHAR(date '2045-12-02', 'Day, DDth Month YYYY');

परिणाम:

 Saturday , 02nd December  2045

हम fm . का उपयोग कर सकते हैं किसी भी पैडिंग को दबाने के लिए टेम्पलेट संशोधक जिसे लागू किया जा सकता है:

SELECT TO_CHAR(date '2165-04-01', 'fmDay, fmDDth fmMonth YYYY');

परिणाम:

 Monday, 1st April 2165

यह भी ध्यान दें कि th टेम्पलेट संशोधक यह जानने के लिए पर्याप्त स्मार्ट है कि st , nd , rd , या th जोड़ा जाना चाहिए।

यहां एक उदाहरण दिया गया है जो TO_CHAR() पर विभिन्न कॉल का उपयोग करता है अलग-अलग क्षेत्रों में विभिन्न दिनांक भागों को आउटपुट करने के लिए:

SELECT 
    TO_CHAR(date '2165-04-01', 'fmDay') AS "Day",
    TO_CHAR(date '2165-04-01', 'fmDD') AS "DD",
    TO_CHAR(date '2165-04-01', 'fmMonth') AS "Month",
    TO_CHAR(date '2165-04-01', 'YYYY') AS "YYYY";

परिणाम:

  Day   | DD | Month | YYYY 
--------+----+-------+------
 Monday | 1  | April | 2165

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL हिम्मत:"रेसजंक" क्या है?

  2. ऑपरेशनल एरर को कैसे ठीक करें:(psycopg2.OperationalError) सर्वर ने अप्रत्याशित रूप से कनेक्शन बंद कर दिया

  3. एक्सेस को PostgreSQL में कनवर्ट करें?

  4. Oracle से PostgreSQL:ANSI बाहरी PostgreSQL में सिंटैक्स में शामिल हों

  5. क्लाउड में पोस्टग्रेएसक्यूएल क्लस्टर्स के नियर-ज़ीरो डाउनटाइम ऑटोमेटेड अपग्रेड्स (भाग II)