2019.4.15
2020.1.7

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です」という文字列に変換して出力されます。

Oracle】関連記事