为了账号安全,请及时绑定邮箱和手机立即绑定

请问在Oracle SQL中的!=与<>?

请问在Oracle SQL中的!=与<>?

侃侃无极 2019-09-13 11:10:00
Oracle SQL中的!=与<>
查看完整描述

4 回答

?
慕斯709654

TA贡献1840条经验 获得超5个赞

一个问题:
这两个都是不等于符号,没有什么区别,如果这个字段有索引,都可以使用的。
第二个问题:
in 和 not in 都可以使用索引的,但是如果name字段有很多值,那么not in的执行时间应该稍微长一点,因为它返回的值比较多。
补充:如果name的值比较少的话,in和not in条件严密性差不多,如果name值比较多的时候,in的严密性更高,索引都是按照顺序排好的,相等的情况只有一种,不等的情况有很多种。
如果你('a', 'b')这些值是放在另外一个表里面,还有not exsits可以替换,如果是常量的话,貌似也只能这么写了。


查看完整回答
反对 回复 2019-09-19
?
qq_遁去的一_1

TA贡献1725条经验 获得超7个赞

我怎么记得oracle只能用<>呢。如果能用,应该是没有区别。
不管怎样,“不等于”判断是不能用索引的。
道理很简单:索引即使穿上了“树”这个马甲,其本质上还是对排序数据的二分查找。
“不等于”判断无法确定数据顺序,也就无法使用二分查找算法。所以就无法使用索引了。
其他不能使用索引的情况也是这个道理。

查看完整回答
反对 回复 2019-09-19
  • 4 回答
  • 0 关注
  • 631 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信