select GLH from sde.zd_nh;
得到488个记录,且GLH不重复SELECT GLH FROM SDE.ZD_NH WHERE GLH  IN (SELECT ZDID FROM A_ZDLY);
得出471个记录SELECT GLH FROM SDE.ZD_NH WHERE GLH NOT IN (SELECT ZDID FROM A_ZDLY);
为什么执行下来是 no rows returned呢??
为什么不是488-471=17个记录吗??如何才能找出不在A_ZDLY表里的那17个记录?

解决方案 »

  1.   

    SELECT GLH FROM SDE.ZD_NH WHERE GLH is null
    是这样查的吗
      

  2.   

    select * from sde.zd_nh where glh is null;=====no rows returned
      

  3.   

    select GLH from sde.zd_nh
    minus
    SELECT GLH FROM SDE.ZD_NH WHERE GLH  IN (SELECT ZDID FROM A_ZDLY);看一下结果是怎样的
      

  4.   

    查一下这两个语句的返回值:SELECT GLH FROM SDE.ZD_NH t1 Where Exists (Select 1 From A_ZDLY t2 Where t2.ZDID = t1.GLH);
    SELECT GLH FROM SDE.ZD_NH t1 Where Not Exists (Select 1 From A_ZDLY t2 Where t2.ZDID = t1.GLH);