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

日付形式を知らずに日付文字列をタイムスタンプに変換する方法

    日付スタイルを「ISO、DMY」に設定する必要があります。デフォルトでは「ISO、MDY」に設定されており、例が失敗する原因になります:

    > show datestyle;
    
     DateStyle 
    -----------
     ISO, MDY
    (1 row)
    
    > select '28-Sep-13'::date;
        date    
    ------------
     2013-09-28
    (1 row)
    
    > select '28/09/2013'::date;
    ERROR:  date/time field value out of range: "28/09/2013"
    LINE 1: select '28/09/2013'::date;
                   ^
    HINT:  Perhaps you need a different "datestyle" setting.
    
    > set datestyle = 'ISO, DMY';
    SET
    
    > select '28-Sep-13'::date;
        date    
    ------------
     2013-09-28
    (1 row)
    
    > select '28/09/2013'::date;
        date    
    ------------
     2013-09-28
    (1 row)
    

    (PostgreSQL 9.1で行われた例ですが、DateStyle設定と関連する動作は古いため、正常に機能するはずです)



    1. 投稿に画像アルバムを表示するにはどうすればよいですか? [PHPとMYSQLのみを使用]

    2. 変更イベントを監査ログテーブルに追加するためのトリガーを作成する方法

    3. データテーブルをループして、各行から2つの特定の値を取得します

    4. SSAS ディメンション処理により、基になるメジャーが未処理になる