• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:オラクルSQLの問題でDECODE関数について)

オラクルSQLの問題でDECODE関数について

このQ&Aのポイント
  • 『DEPATMENT_ID列が80の場合でかつCOMMISSION_PCT列がNULL値の場合は「NO COMMISSION」、NULL値でない場合は「SALARY*COMMISSION_PCT」が文字列に変換されて戻されます。また、DEPARTMENT_ID列が80以外の場合は「NOT SALES」が戻されます。』と解説があり、
  • 『DECODE関数が最初に戻す「SALARY*COMMISSION_PCT」が数値型なので、「NO COMMISSION」が数値に変換できないためエラーになります。』と解説がありました。
  • DECODE関数の公式には、αがβのときはγを戻し、それ以外のときはδを戻すというルールがありますが、γとδは同じ型でなければいけないというルールがあるため、後段のコードではエラーが発生します。

質問者が選んだベストアンサー

  • ベストアンサー
  • mpro-gram
  • ベストアンサー率74% (170/228)
回答No.1

そういうのって、まずマニュアル読めばすぐ解りそうなものですけど? http://www.shift-the-oracle.com/sql/functions/decode.html 「第3パラメータのデータ型を戻り値の型とするので、それ以降に記述する戻り値用のデータもその型に合わせなければならない。」(少々表現変更)

tutankarmen
質問者

お礼

回答頂く事で冷静に理解することができました。 ありがとうございました。

関連するQ&A