Мой запрос не должен возвращать 1, когда оба значения (srf1.shipment_refnum_qual_gid = 'DUCAB.EXCISE_INVOICE_ATTACHED' и srf2.shipment_refnum_qual_gid = 'DUCAB.BOL_ATTACHED') равны одному из Y, но одно из которых может равняться одному. как Y.
В настоящее время мой запрос работает, когда оба значения N или одно из значений N, но всякий раз, когда мои значения refnum равны Y, мой запрос не работает.
Я новичок в SQL - пожалуйста, помогите мне разобраться.
Я пытался использовать IN, но он не работает.
select 1
from shipment sh, shipment_refnum srf1, shipment_refnum srf2, shipment_remark srk
where
sh.shipment_gid = srf1.shipment_gid
and sh.shipment_gid = srf2.shipment_gid
and srf1.shipment_gid = srk.shipment_gid
and srf2.shipment_gid = srk.shipment_gid
and srf1.shipment_refnum_qual_gid = 'DUCAB.EXCISE_INVOICE_ATTACHED'
and srf2.shipment_refnum_qual_gid = 'DUCAB.BOL_ATTACHED'
and srf1.shipment_refnum_value in ('Y','N')
and srf2.shipment_refnum_value in ('Y','N')
and srk.remark_qual_gid = 'DUCAB.REASON_FOR_REJECTION'
and srk.remark_text not in ('NO_VALUE')
and sh.shipment_gid = 'DUCAB.20110'
Итак, мой желаемый результат, если
shipment_refnum_value из 'DUCAB.EXCISE_INVOICE_ATTACHED' равно Y, а shipment_refnum_value из 'DUCAB.BOL_ATTACHED' равно Y, тогда мой запрос не должен возвращать 1.