【SQL】Nullを書き換える

デフォルトではNullのカラムだが、条件によって数値の値で更新される。
そのカラムを使ってソートをする場合、どうしてもNullが入ると正しくソートができない。
そんな時に便利な関数がOracleには存在した。

NVL関数

NVL関数の構文

SELECT NVL(カラム名,'置換える値') FROM テーブル名;

このように書くことによって、指定されたカラムがNullの場合、置換える値に書き換えをしてくれる。

Oracle以外のDBを使った場合

MySQLの場合

SELECT IFNULL(カラム名, '置換える値') FROM テーブル名;

PostgreSQLの場合

SELECT COALESCE(カラム名, '置換える値') FROM テーブル名;

SQLserverの場合

SELECT ISNULL(カラム名, '置換える値') FROM テーブル名;