在哪里xxx不在......没有返回任何东西

时间:2015-03-03 03:26:08

标签: sql-server-2008

有人可以解释一下为什么最后一个陈述没有列出#inv_item但不在salesMasterDET中的所有ST项目?我正在使用SQL 2008 R2

如果我使用以下命令填充临时表: SELECT DISTINCT(productCode)INTO #smd_item FROM salesMasterDET 我运行相同的选择,S1-S4,但使用临时表,一切正常。

S1:SELECT DISTINCT(Item)FROM #inv_item

S2:SELECT DISTINCT(ProductCode)FROM salesMasterDET

S3:SELECT DISTINCT(Item)FROM #inv_item where Item IN(SELECT ProductCode FROM salesMasterDET)

S4:SELECT DISTINCT(Item)FROM #inv_item其中Item NOT IN(SELECT ProductCode FROM salesMasterDET)

结果:

S1:ST01 ST02 ST03 ST04 ST05 ST11 ST12

S2:ST04 ST12

S3:ST04 ST12

S4:(无结果)(期待ST01,ST 02 ,,, ST11)

1 个答案:

答案 0 :(得分:0)

我打赌你应该扭转二元操作。

S4: SELECT DISTINCT(Item) FROM #inv_item where NOT Item IN (SELECT ProductCode FROM salesMasterDET)