DB2でNULLを出力する方法
先日、DB2でSELECT句で固定値のNULLを出力するときに、
NULLIF(0,0)
などというインチキくさい方法でやっていると書きましたが、もう少しましな方法を見つけました。
それはCASTを使う方法です。
CAST(NULL AS INT)
とやると、INT型のNULL値(というのも変かもしれませんが)が返ってきます。
これのいいところは、データ型やサイズが明確になることです。
CAST(NULL AS CHAR(10)) とか、CAST(NULL AS DECIMAL(10,3)) という指定が出来るのです。
今回の目的はCSVファイルの出力だったのでそこまでの必要性は無かったのですが、必要とされる場面もあるかもしれません。
少なくとも NULLIF(0,0) よりはずっといいと思います。
ちなみにDB2のCASTは関数ではなく、CAST指定なんだそうです(指定って何なのだろう?)。
ここで使っているNULLも定数ではなく、キーワードという扱いになるみたいです。
でも、最初からNULLが定数として使えればこんな面倒なことはしなくていいんですけどね。
| 固定リンク | コメント (0) | トラックバック (0)



















最近のコメント