|
1
1
问题是因为其中一个P值为null。删除此项,方法是说
http://sqlfiddle.com/#!6/77fb8/3
null P值包含在所选不同值的列表中,并且
这有点违反直觉,但没有任何东西可以等于或不等于null,甚至不等于null。当一侧为null时使用=会导致null、not true和not false IN可用于检查值是否在列表中,但如果列表中包含null,则不能检查值是否在列表中
|
|
|
2
1
你可以想到
因此,您必须处理
|
|
|
3
1
试试这个:
这个想法是使用两个
|
|
|
4
1
因为P有一个空值。
使用IS或IS代替。 |
|
|
5
0
写notExists而不是not in,这样它就不会考虑null
案例 当P为null时,则为“Root” 当N在(从BST中选择不同的P)时,则为“内部” 当N不存在时(从BST中选择*作为t2,其中t2.N=t1.N) 然后是“叶子” 结束为类型 从BST作为t1 |
|
|
sqlrobert · SQL-如何查找不包含特定字段值的一组记录 2 年前 |
|
|
Nick Fleetwood · 调度语法的LINQ查询 3 年前 |
|
|
Mateen Bagheri · 选择表的计数并选择其自身 3 年前 |
|
Java · 使用交叉应用同时显示两列 4 年前 |