zukucode
主にWEB関連の情報を技術メモとして発信しています。

PostgreSQL 日付を指定したフォーマットの文字列に変換する

PostgreSQLで、日付を指定したフォーマットの文字列に変換する方法を紹介します。

PostgreSQLで、日付を指定したフォーマットの文字列に変換するには、TO_CHAR関数を使用します。

TO_CHAR関数の、第二引数にフォーマットを指定することで、日付を任意の形式の文字列に変換します。

SELECT
    TO_CHAR(CURRENT_DATE, 'YYYY年MM月DD日')

「2023年04月08日」のような形で、文字列として値を取得できます。

ゼロ埋めを無効にする方法

「2023年4月8日」のように、ゼロ埋めをせずに取得したい場合は、以下のようにFMを付与します。

FM修飾子は、空白やゼロのパディングを無効にする機能です。

SELECT
    TO_CHAR(CURRENT_DATE, 'YYYY年FMMM月FMDD日')

「2023年4月8日」のような形で、ゼロ埋めしない文字列として値を取得できます。


関連記事

  • PostgreSQL UNIQUE制約で値の重複を防ぐ

    同じメールアドレスを複数の利用者へ登録させたくない場合は、UNIQUE制約を使用します。登録前に同じ値を検索すると、利用者へ早く分かりやすいメッセージを返せます。しかし、検索と登録の間に別の処理が登録...


  • PostgreSQLで複数の更新をトランザクションにまとめる

    注文を登録するとき、注文本体と明細を別々に保存すると、途中で失敗して片方だけ残る可能性があります。両方を1つの操作として扱いたい場合はトランザクションを使います。BEGINからCOMMITまでの変更を...


  • PostgreSQL 現在のシステム日付・時刻を取得する

    OracleのSYSDATEのように、PostgreSQLで現在のシステム日付や時刻を取得する方法を紹介します。YYYY/MM/DDやYYYY-MM-DDのように、date型を取得するにはCURREN...


  • PostgreSQL タイムスタンプ型のカラムをミリ秒まで取得する

    タイムスタンプ型(timestamp without time zone)のカラムをミリ秒まで含めて取得してVB.NETなどで扱いたい場合、普通にSELECTするだけではうまく行かない場合があります。...


  • PostgreSQL インデックスで検索を速くする基本

    商品数が少ない間は全行を調べても速く見えますが、データが増えると検索条件に合う行を探す時間が長くなります。インデックスは、特定の列から行を探しやすくする構造です。次の検索で利用される可能性があります。...


  • PostgreSQL 外部キーで存在しない親IDを防ぐ

    注文の明細が、存在しない注文IDを参照するとデータの意味が分からなくなります。アプリケーションで事前確認しても、確認後に別の処理が親を削除する可能性があります。外部キーを設定し、データベースでも関係を...


  • PostgreSQL 日付の加算・減算を行う

    PostgreSQLで日付の加算・減算を行う方法を紹介します。日付型のカラムに対しては、数字の計算と同じ要領で行うことができます。YYYYMMDD形式などの文字列型のカラムの場合は、日付型に変換してか...


  • PostgreSQL ISNULLやNVLのようにNULLを判定する方法

    PostgreSQLでSQL ServerのISNULLやOracleのNVLのように、NULLの場合に別の値を取得するにはCOALESCEを使用します。使い方はISNULLやNVLと同じように、第一...


  • VSCodeからSQL Serverに接続してSQLを実行する

    VSCodeからSQL Serverに接続してSQLを実行する方法を紹介します。SQL ServerをDockerで起動して別コンテナからアクセスするで、VSCodeからDockerで起動したSQL ...


  • SQL ServerをDockerで起動して別コンテナからアクセスする

    SQL ServerをDockerで起動して別コンテナからアクセスする方法を紹介します。SQL Serverへの接続はVSCodeで行います。ASP.NET(.NET Core)の開発環境をDocke...