嗨,我一直在做一个简单的select语句来打印一些数据类型为VARCHAR2(20 BYTE)的列。但是它们显示为空白。该字段应该具有值“ 000002018151000709”或类似值。我不确定为什么在选择中未显示该值。我正在从oracle SQL Developer运行此程序。
示例:两个id字段均为float,登录号为VARCHAR2(20 BYTE)
查询1:
SELECT aor.accession_id,aor.accession,o.order_id
from orders o
left outer join accession_order_r aor on aor.order_id = o.ORDER_ID
and aor.accession != null
where o.CATALOG_TYPE_CD = 123 --lab
and o.UPDT_DT_TM >= TO_DATE('2019-06-01', 'YYYY-MM-DD HH24:MI:SS')
and o.UPDT_DT_TM <= TO_DATE('2019-06-01 01:00', 'YYYY-MM-DD HH24:MI:SS')
--and aor.accession_id = 55260.00
and o.order_id = 91683.00
查询2:
select * from accession a
join accession_order_r ar on a.accession_id = ar.accession_id
where a.accession_id = 55260.00
如果我查询order_id,查询1将返回一个空的登录,并且仍返回一个order_id。但是,如果我使用accession_id,它将返回NULL。
查询2返回所有值并正常工作。
答案 0 :(得分:0)
我删除了以下情况,一切似乎都可以正常运行,我不确定为什么。如果有人知道原因,请更新答案。感谢您的帮助。
and aor.accession != null