Oracle查询表现奇怪为什么会发生这种情况?难道我做错了什么?

时间:2014-11-26 17:03:09

标签: oracle select

首先抱歉,如果我的英语不好:

  1. select * from table2 where column1='000022071001';
    没有回报!

  2. select * from table1 where column1 not in (select column1 from table2);
    什么都不返回

  3. select * from table1 where column1='000022071001';
    它返回价值!

  4. 这是不合逻辑的,如果column1值为&00; 000022071001' from table1不在table2中,为什么第二个查询什么都不返回?

    我做错了什么?

1 个答案:

答案 0 :(得分:3)

table2中的column1中会有一些NULL值导致此问题

试试这个

 select * from table1 where column1 not in 
(select column1 
 from table2 
 WHERE column1 is not null)