sql ORA-01790表达式必须与对应的表达式

时间:2018-03-02 03:06:11

标签: sql

ORA-01790:expression必须与相应的表达式错误消息具有相同的数据类型。下面是我正在使用的sql。我真的无法找到导致错误的最新消息。

select distinct *
from
( select 
  h.billingaddress, 
  h.sold_to,
  '' as trx_number,
  '' as bs_number,
  apd.transaction_number
--      apd.transaction_number
from 
  amti_so_headers2 h
inner join
  amti_print_document apd
on 
  h.header_id = apd.header_id
where
  apd.transaction_number in ('9535','')
and
  (
    report_type = 'Billing Statement'
    or
    report_type = 'Sales Invoice'
  )
  UNION
select
  billingaddress,
  bill_to sold_to,
  amti_trx_header.trx_number,
  amti_trx_header.bs_number,
  '' transaction_number
from 
  amti_trx_header
where
  trx_number in ('','')
  or
  bs_number in ('9535','')
);

1 个答案:

答案 0 :(得分:0)

您的一个列在您的UNION查询之间具有不同的数据类型。如果我不得不猜测,我想'' transaction_number引起了问题,因为这个名字暗示它是一个数字,但你已经把它作为文本。