合并两个 table 具有不同列且没有空值

Merge two table with different columns without null values

再次在这里寻求帮助 - 我正在使用两个 Oracle tables

我有这个问题 (image-1)

有两个 table 有不同的列,我做了一个联合,我得到了你在图像 1 上看到的结果 这是我的查询:

(select td.DETALLE col1, 
           tg.FININ col2, 
           tg.ffinn col3,
           null as col4
    from table_1 tg
    inner join other_table td on (tg.cod_f = td.fol and tg.prod_c = td.prod)
    where UPPER(tg.sys_user) = UPPER(:APP_USER)
      and td.fol = :P10_FOLLETO
      and td.prod = :P10_PRODUCTO
      and tg.fin = :P10_FECHA_INICIO)
    union all 
    (select null as col1
          ,null as col2
          ,null as col3
          ,camp.camp_util.get_data(:P10_FOLLETO, :P10_PRODUCTO, :P10_FECHA_INICIO) as col4 -- This is a FUNCTION from another schema that will return in this case just MAD
    from dual);

但我的结果是:

注意:每个查询都会 return 一行,因此我想将所有内容分组到一行中。

有人帮帮我吗?

此致

我认为你不想要 union,而是一个 select 调用函数:

select td.DETALLE col1, 
       tg.FININ col2, 
       tg.ffinn col3,
       camp.camp_util.get_data(:P10_FOLLETO, :P10_PRODUCTO, :P10_FECHA_INICIO) as col4
from table_1 tg
inner join other_table td on (tg.cod_f = td.fol and tg.prod_c = td.prod)
where UPPER(tg.sys_user) = UPPER(:APP_USER)
  and td.fol = :P10_FOLLETO
  and td.prod = :P10_PRODUCTO
  and tg.fin = :P10_FECHA_INICIO