Если вы пытаетесь сложить данные с UNION
, а исходные столбцы имеют разные типы, один (или более) из исходных столбцов необходимо преобразовать в тип целевого типа столбца.
Пример:
data have_num;
do x = 1 to 10;
output;
end;
data have_char;
do _n_ = 20 to 30;
x = put (_n_, 8.-L);
output;
end;
run;
proc sql;
%* use input() to convert;
create table want_x_num as
select x from have_num
union
select input(x,best12.) as x from have_char
;
* use cats() to convert;
create table want_x_char as
select cats(x) from have_num
union
select x from have_char
;