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

PostgreSQLで(タイムゾーンなしで)現在の日付と時刻を取得する方法

    問題:

    PostgreSQLデータベースで現在の日付と時刻を取得したいと考えています。タイムゾーンのオフセットは必要ありません。

    解決策:

    関数LOCALTIMESTAMPを使用します タイムゾーン情報なしで現在の日付と時刻を取得するには:

    SELECT LOCALTIMESTAMP ;
    

    クエリの結果は次のとおりです。

    2019-09-24 20:10:58.977914

    ディスカッション:

    PostgreSQL関数LOCALTIMESTAMP (PostgreSQLのそのインスタンスを実行しているマシンの)現在の日付と時刻をタイムスタンプとして返します。 価値。 ' YYYY-MM-DD hh:mm:ss.nnnnnnnを使用します '形式、ここで:

    • YYYY は4桁の年です。
    • MM は2桁の月です。
    • DD 2桁の日です。
    • hh は2桁の時間です。
    • mm 2桁の分です。
    • ss は2桁の秒です。
    • nnnnnn は小数秒です(0から6桁の精度まで)。

    お気づきのとおり、この関数には括弧がありません。ただし、日付と時刻を特定の精度で表示する場合は、0〜6の整数を引数として角かっこで囲んでください。これにより、希望する秒数の日付と時刻が返されます。例:LOCALTIMESTAMP(1) 小数秒のみを示します(つまり、小数点以下1桁)。 2は2桁などを返します。デフォルトの精度は6で、これは小数秒の最大数でもあります。これは、角かっこをまったく使用しない場合に得られるものです。次の例を見てください:

    SELECT LOCALTIMESTAMP(0) ;
    

    クエリの結果は次のとおりです。

    2019-09-24 20:10:58

    引数として0を指定したため、この結果には小数秒は含まれていません。

    この関数は、現在のトランザクションが開始された時刻を返します。 LOCALTIMESTAMPの違い およびCURRENT_TIMESTAMP LOCALTIMESTAMP タイムゾーンオフセットは含まれていません。


    1. Oracle列の自動変更タイムスタンプタイプはありますか?

    2. PostgreSQLの日付から年を引く

    3. SQLServer2014での遅延耐久性

    4. Postgresql intarrayエラー:未定義のシンボル:pfree