NULL値を別の値や文字列に変換(NVL)
OracleのSQLで取得したデータがNULLの場合、NULL以外の値や文字列に変換する方法です。
SQLを使用する際によく利用する関数で、SQL ServerならISNULL、MySQLならIFNULLといった具合でDBによって異なりますが、Oracleの場合はこれが「NVL」になります。
コード
関数「NVL」の使い方は以下の通り。
◆NULL以外の場合
SELECT NVL('abcde', 'nullです') AS FUGA FROM DUAL;
-------------------
abcde
NVLに指定したデータがNULL以外なので、「abcde」がそのまま出力されます。
◆NULLの場合
SELECT NVL(NULL, 'nullです') FROM DUAL;
-------------------
nullです
NVLに指定したデータがNULLなので、「nullです」という文字列に変換して出力されます。