Так вот в чем дело; если вы собираетесь использовать UNION или UNION ALL, каждый блок запроса должен иметь одинаковый столбец и тип.
Например; У нас есть 2 запроса, и мы хотим связать их.
Первый блок запроса содержит 3 столбца и их тип NUMBER, VARCHAR, NUMBER (по порядку). Второй блок должен состоять из 3 столбцов, а типы должны быть NUMBER, VARCHAR, VARCHAR (по порядку)
Так что ваш запрос выглядит не так. Вы хотите вывод, такой как скриншот, который вы отправили. Вот запрос, который отредактировал:
select
weaving_yarn_gatepass.gp_date
,weaving_yarn_tr.gp_no
,weaving_yarn_gatepass.to_from as party
,weaving_yarn_tr.yr_id
,weaving_yarn_tr.bags_in
,weaving_yarn_tr.bags_out
,sum(nvl(weaving_yarn_tr.bags_out,0) - nvl(weaving_yarn_tr.bags_in,0)) over(order by gp_date) as balance
from weaving_yarn_tr
,weaving_yarn_gatepass
where weaving_yarn_tr.gp_no = WEAVING_YARN_GATEPASS."GP_NO."
and weaving_yarn_tr.yr_id = :p216_yr_id
and weaving_yarn_gatepass.to_from = :p216_yr_desc
union all
select
weaving_warp_set.received_date --I don't know if it means gp_date
,null as gp_no
,weaving_warp_set.party
,null yr_id -- If there is a column named YR_ID in WEAVING_WARP_SET put here
,weaving_warp_set.total_bags_consumed
,null as bags_out
,nvl(null,0) - nvl(weaving_warp_set.total_bags_consumed,0) as balance
from weaving_warp_set
where weaving_warp_set.yarn_item = :p216_yr_id
and weaving_warp_set.party = :p216_yr_desc
order by gp_date;