“IN”的奇怪行为条款作品
我找到了这个网站: 这里
很好地描述了它为什么有效和为什么无效。
但我的问题有点不同。
select 'true' from dual where 'test' not in ('test2','');
为什么此查询不返回行?''
是否像 null
一样处理?
谢谢你的帮助
i found this site: here
its very well described why it works and why not.
but my question is a little different.
select 'true' from dual where 'test' not in ('test2','');
why does this query not returing a row?
is ''
handled like null
?
thx for your help
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您的怀疑是正确的。
因此,您的查询基本上是
Which 评估为
Which is
unknown
将给出相同(缺少)的结果
Your suspicions were correct.
So your query is basically
Which evaluates as
Which is
unknown
will give the same (lack of) results
是的,在 Oracle 中,空字符串就是 NULL。
Yes, in Oracle an empty string is a NULL.