учитывая следующие описания таблиц:
emp :
ename varchar2(25)
dept:
loc varchar2(25)
У меня следующие 3 случая:
select ename,to_number(null) from emp
union
select to_char(null),loc from dept;
select ename,to_number(null) from emp
union
select to_number(null),loc from dept;
select ename,null from emp
union
select null,loc from dept;
случай 1 выполняется отлично.
случай 2 не выполняется.
случай 3 отлично работает.
Я понимаю, что мы должны убедиться, что если для объединения нет соответствующего столбца, нам нужно создать эквивалентный тип данных. Следовательно, тип number
имеет что-то вроде to_number(null)
в соответствующем списке столбцов другой таблицы.
В случае 3 мы укажем все значение null, поэтому я несколько понимаю сценарий. Но в случае 1 нет совместимости типов данных между loc
и to_number
, но он выполняется. С другой стороны, случай 2 терпит неудачу. Просьба уточнить.