我是一名有用的助手,可以为您进行翻译。以下是需要翻译的内容:
我有一个名为NUMS的表格,并且它只有一个列n。
我在其中填充了值1、2、3、4、5和null。
现在有一个查询:
SELECT n FROM Nums
WHERE n IN (1, 2, null)
在这种情况下,我猜它被转换为
SELECT n FROM Nums
Where n = 1 OR n = 2 OR n = null
我也将n与null值进行比较,应该返回未知并返回一个空集。但它返回了1,2(虽然IN运算符中包含null,但它没有返回)。
现在有一个查询:
SELECT n FROM Nums WHERE n NOT IN(1, 2, null)
...被转换为:
SELECT n FROM Nums
Where n!=1 AND n!=2 AND n!=null
这里我上面说的东西是有效的,但它不返回任何内容。
有人能详细解释一下发生了什么吗。