这不是很重要,但只是想知道为什么Oracle SQL似乎引用不一致? 我的意思是他们为什么要......
NOT IN (?,?,?)
和
!= '?'
而不是
NOT EQ '?'
只是一个想法
ķ
答案 0 :(得分:0)
NOT IN ( ?, ? )
是ISO 9075 SQL standard syntax。我想知道哪些符号可能用来表示“不在”。这看起来很愚蠢,因为!=
之类的“数学”符号几乎是自我记录的,而“不在”所需的“设置”类型符号在大多数键盘上都不可用,大多数键盘也不熟悉开发者。
请注意,!=
和NOT EQ
都不是ISO标准。标准的“不等于运算符”是<>
,但如上所述here,!=
有一些优势。
答案 1 :(得分:0)
在代码NOT IN (?,?,?)
中,问号似乎是来自参数化查询的位置参数,而代码!= '?'
是与字符串文字的比较。如果你想让它参数化,那么它就是!= ?
而没有单引号。