oracle 一条查询语句的两个范围条件都有索引,用哪个?

select*fromtabletwhere(t.abetweenxxandxx)and(t.bbetweenxxandxx)我目前知道的,按规则的话,是unique的索... select * from table t where (t.a between xx and xx) and (t.b between xx and xx)
我目前知道的,按规则的话,是unique的索引会比一般索引优先。还有其他情况,谁知道的,麻烦列举一下
展开
 我来答
厍曼冬6o
2012-05-23 · TA获得超过1569个赞
知道小有建树答主
回答量:1336
采纳率:0%
帮助的人:1205万
展开全部
Unique Index和一般normal Index没有显著性的差异,只是Unique Index多了唯一性的约束。
会限制索引使用的情况:
使用不等于操作符(<>、!=)
使用IS NULL 或IS NOT NULL
使用函数
追问
我想知道的是  (t.a between xx and xx) and (t.b between xx and xx) 这俩索引会执行哪个由哪些因素决定
追答
单独列的索引,where条件中出现就会使用
复合索引的话,where条件需要复合字段都出现才会使用
noobcrystal
2012-05-25
知道答主
回答量:3
采纳率:0%
帮助的人:3.1万
展开全部
关键你还要考虑表的数据量,100万记录的表和1000条记录的表,该不该走索引也是个问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d2f3de142
2012-05-23 · TA获得超过186个赞
知道小有建树答主
回答量:121
采纳率:0%
帮助的人:119万
展开全部
用聚集索引会快很多,你快Unique索引在a 上还是b上,在哪个上面就用哪个
因为你是范围查询.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式