字段有null值建立索引优化问题

wallace_jjh 2011-08-01 09:14:32
最近有5千万记录的表,需要substr(字段, 1,3 ) = ‘ZZZ’检索条件
执行计划很差,对其建立索引也不起作用,大家谁有经验,请指教
...全文
576 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wallace_jjh 2011-08-04
  • 打赏
  • 举报
回复
发现有时候是可以走索引的,就是执行效率不是很明显
感谢朋友的指教
BenChiM888 2011-08-01
  • 打赏
  • 举报
回复

--那就再换一种写法。
create index index_name on table_name(substr(nvl(字段,'0'),1,3));


[Quote=引用 2 楼 wallace_jjh 的回复:]
谢谢回答,你说的方法我试了,也不起作用,可能是因为这个字段的值有很多是null的吧
[/Quote]
wallace_jjh 2011-08-01
  • 打赏
  • 举报
回复
谢谢回答,你说的方法我试了,也不起作用,可能是因为这个字段的值有很多是null的吧
BenChiM888 2011-08-01
  • 打赏
  • 举报
回复

--建一个函数索引,根据你的描述普通索引是不起作用的。
create index index_name on table_name(substr(字段,1,3));

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧