select T1.XH AS HHX from SIS_XJ_XSJBXX T1 where exists (select 1 from SIS_LX_NBYSMDGL T2 where T1.XH = T2.XH) SELECT XS.XH AS XHH FROM SIS_XJ_XSJBXX XS, SIS_LX_NBYSMDGL NB WHERE XS.XH = NB.XH(+) AND NB.XH IS NOT NULL
这两个查询方式获得的值不同,谁能给解释下原因,是不是因为我其中的一个表中存在重复数据?
第一个语句是如果两个表关联后存在数据,者将T1.XH查询出来。否者不查询
第二个语句是两表连接查询且NB.XH为空,查询的到XS.XH
两个语句意思都不同,结果怎么可能相同?
T.XH和T2.XH都是不可为空的吗?