SQL辞典

【SQL変換関数】NVL2 – NULL値を変換する(Oracle)

投稿日:2009年8月29日 更新日:

NVL関数がバージョンアップ?したNVL2関数があります。NVL2はOracleのコマンドで、以下の通りにNULL値を別の値に変換することができます。

構文:

NVL2(式, 値1, 値2)

式の値がNULL以外であれば値1を返し、NULLの場合は値2を戻す。

使用例:給料とボーナスの合計を求める

SELECT name, salary, bonus, NVL2(bonus, salary+bonus, salary)

name     salary      bonus    NVL2(bonus, salary+bonus, salary)
————————————————————————————————-
Yamada    200000    100000    300000
Tanaka    150000             150000
Kawai     300000    130000    430000

salary+bonusのような演算でbonusがNULL値の場合はsalary+bonusは何の値も返しません。ですので、上記のようにNULL値を別の値に変換する必要があるのです。

SQLコマンド辞典に戻る

広告

広告

-SQL辞典


comment

関連記事

no image

【SQL変換関数】ISNULL - NULL値を変換する (SQL Server)

SQL ServerでNULL値を別の値に変換するには、ISNULL関数を使用します。演算式の中にNULL値が入っていると不都合な結果になる場合があります。その場合、NULL値を別の値に変換する事で対 …

no image

【SQL集計関数】STDDEV、STDEV – 標準偏差を求める(SQL Server、Oracle)

SQL ServerやOracleで標準偏差(Standard Deviation)を求めるにはSTDDEVもしくはSTDEVを使います。標準偏差とは、データの散らばりの度合いを表し、標準偏差の値が小 …

no image

【SQL文字列関数】ASCII関数 – 文字をASCIIコードに変換する(Oracle、SQL Server)

SQL ServerやOracleで文字をASCIIコードに変換するには、ASCII関数を使います。使い方はいたって簡単です。 使用例:文字をASCIIに変換する SELECT alphabet, A …

no image

【SQL変換関数】COALESCE – NULL値でない最初の引数を返す(Oracle、SQL Server)

COALESCE関数は複数の引数を持ち、その引数を最初から評価して最初にNULL値でない引数を返します。難しそうですが、例を見ると使い方が簡単な関数だという事がわかります。COALESCE関数はOra …

no image

【SQL日付関数】YEAR – 日付値から年を取得する(SQL Server)

SQL ServerではYEAR関数を使って日付値から年を取得することができます。YEAR関数の他にDATEPART関数で日付値から年を取得することができます。DATEPART関数は年だけではなく、月 …

広告

転職