psqlの出力でnullなのか空なのかわかりやすくしたい †varcharなどのカラムの内容がnullなのか空なのかわかりやすくする方法を以下に記します。 関連記事 †確認用テーブル †nullと空(empty)を確認するために、以下のテーブルを作成しました。 sakuradb=> create table t1 (v varchar(10)); CREATE TABLE sakuradb=> \d t1 Table "public.t1" Column | Type | Modifiers --------+-----------------------+----------- v | character varying(10) | 確認用データ †nullと空(empty)をinsertします。 sakuradb=> insert into t1 values (null),(''); INSERT 0 2 sakuradb=> select * from t1; v --- (2 rows) sakuradb=> insert後にselectをしましたが、nullなのかemptyなのかがpsqlの出力ではわからないのが確認できます。 pset null で出力を設定する †以下のコマンドで、nullの場合(null)と出力されるようになります。 \pset null '(null)' 以下、実行例です。 sakuradb=> \pset null '(null)' Null display is "(null)". sakuradb=> select * from t1; v -------- (null) (2 rows) 上記では、'(null)'としましたが、任意の文字列にすることができます。 sakuradb=> \pset null '(ヌルだよ)' Null display is "(ヌルだよ)". sakuradb=> select * from t1; v ------------ (ヌルだよ) (2 rows) psql起動時に設定した状態で起動したい †psqlの設定は、.psqlrcに記述すれば良いです。 echo \\pset null \'\(null\)\' >> ~/.psqlrc この設定により、(null)と表示されるようになります。 以上、nullと空(empty)をわかるように出力する方法でした。 |