Все типы данных во всех случаях должны соответствовать используемой вами структуре сравнения, например case..when
, decode
, nvl
или nvl2
. Я предлагаю вам использовать nvl
или nvl2
для вашего случая, так как они более прямолинейны для случаев с нулевым значением:
SELECT ENAME,
nvl(to_char(COMM),'no commission') AS COMMISSION,
nvl2(COMM,to_char(COMM),'no commission') AS COMMISSION2
FROM EMP;
SQL Fiddle Demo