mr_eyecatch_akutsu
阿久津 勇太

2016.1.29システム開発 

システムエンジニア

阿久津 勇太

NVL関数の代替を調べてみる。

お久しぶりです、エンジニアの阿久津です。

今回はOracleにて使われている「NVL関数」ですが、 他のDBMSではどのような関数が代替として使われているのかを調べてみました。

そもそも、NVL関数というのは [Null Value Logic]の略で、 比較対象がNULLであった場合の処理をする際に使います。

↓実際に流してみるとこんな形。

SQL : SELECT NVL(null,”Order_Word’) FROM DUAL

結果 : Order_Word

参照先(この例ではnull)がnullであった場合には指定した文字列が返ります。

さて、そんな意味を持つNVLですが、すべてのDBMSで使うことはできません。

それぞれのDBMSごとに対応した関数を使う必要があります。

↓対応する関数を表でまとめたものがこちら

表z

例えば、PostgreSQLで同じ操作をするには、NVLではなくCOALESCEを使います。

同じ機能なら統一して欲しいですよねぇ・・・。

皆さんも、いつもと違うDBMSを使う際にはお気をつけください。

システム開発サービスはこちら
ページTOPへ