sql >> データベース >  >> RDS >> PostgreSQL

PostgreSQLの日付から年を抽出する

    PostgreSQLでは、extract()を使用できます 日付から年を取得する関数。

    date_part()を使用することもできます 同じことをする機能。

    例1:extract()関数

    extract()の使用例を次に示します。 日付から年を抽出する関数。

    SELECT extract(
        year from date '1974-12-16'
        ) AS "Year";
    

    結果:

     Year 
    ------
     1974
    

    現在のタイムスタンプを使用した別の例を次に示します。

    SELECT extract(
        year from current_timestamp
        ) AS "Year";
    

    結果:

     Year 
    ------
     2020
    

    例2:date_part()関数

    date_part()の使用例を次に示します。 代わりに機能します。

    SELECT date_part(
        'year', date '1974-12-16'
        ) AS "Year";
    

    結果:

     Year 
    ------
     1974
    

    構文が少し異なることに注意してください。また、'year' パラメータは文字列値である必要があります(つまり、一重引用符で囲まれています)。

    例3:ISO年

    ISO8601の週番号の年を指定するオプションがあります。

    ISO 8601の各週番号の年は、1月4日を含む週の月曜日から始まります。したがって、1月上旬または12月下旬には、ISO年がグレゴリオ暦の年と異なる場合があります(問題の年によって異なります)。

    これを示す例を次に示します。

    SELECT 
      extract(
        isoyear from date '2024-12-29'
        ) AS "2024-12-29",
      extract(
        isoyear from date '2024-12-30'
        ) AS "2024-12-30";  
    

    結果:

     2024-12-29 | 2024-12-30 
    ------------+------------
           2024 |       2025
    

    したがって、グレゴリオ暦では両方の日付が2024年に該当しますが、ISO年は異なります。

    date_part() 関数は'isoyear'も受け入れます 引数として。


    1. SQLAlchemyで接続タイムアウトを設定する方法

    2. Oracleで複数の文字列を一緒に置き換える方法

    3. Microsoft SQLServer2012へのAdventureWorksデータベースサンプルのインストール

    4. 過度のMySQLアクティビティ