NOT IN无法在sybase中运行?

时间:2016-04-28 18:52:01

标签: sql sybase sybase-iq

我有两张桌子可以说 Table1 Table2 并且两个表都有一个列名称和ID

我想从 Table2 中获取所有名称,而不是 Table1 我写了下面的查询:

Select Name,ID FROM Table2 t2 WHERE t2.Name NOT IN (Select t1.Name FROM Table1 t1);

但是这个查询没有给出预期的输出,我的意思是它也给了我在 Table1 中的名字。

我做了一些谷歌,发现可能是 Table1 null 值,即如果子查询结果包含 null 。虽然我的表没有空值但是为了确保这不是问题,我已经重写了查询,但没有运气:

Select Name,ID FROM Table2 t2 WHERE t2.Name 
NOT IN (Select t1.Name FROM Table1 t1 where t1.Name is not null);

仍然我没有得到预期的结果,但奇怪的是有一段时间它给出了预期的结果,有些时候没有,任何建议,帮助将不胜感激。

sybase 16中是否有任何错误?我正在使用带有db-visualizer的sybase 16。

更新 如果我有以下数据

表1

   Name        ID
-------------------
  Jay          1
---------------------

表2

   Name        ID
-------------------
  Jay          1
  Tom          2
---------------------

预期结果

   Name        ID
-------------------
  Tom          2
---------------------

但我得到了:

结果

   Name        ID
-------------------
  Jay          1
  Tom          2
---------------------

请注意我有时会得到预期的结果,不确定为什么有些时候它会按预期工作而有些时间没有

0 个答案:

没有答案
相关问题