Oracle上空字段能建立索引? Oracle某一个字段上,空值很多,能建立索引吗?如果可以,是否合理,是否失效? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个建个表,在可空字段中建立索引,插入多些数据(因数据少了,执行计划可能执行全表扫描),执行查询where条件中设置此字段查询,看下执行执行计划,应是走你的索引的,若是这样,则结论:可以,合理,不失效我没试,因只有记事本,没法试,呵呵 此列空值较多的话,建议不要建立索引,因为空值不会被索引记录键值如果想建,利用nvl函数建函数索引,查询的时候 where nvl(字段,xxx)=xxx 的方式去查。---你的问题1、可以建2、但是不合理3、不失效 可以,合理不合理看你怎么用。例如,select count(*)就不能利用到这个索引,因为null的记录不会进入索引;但是如果,你的查询只是要返回这个字段不为null的记录,就应该创建这个索引。 pl/sq程序块中输出的列l对齐,求解 跟踪.net程序中参数有值,但传不入oracle存储过程中 监听程序无法启动专用服务器进程,怎么解决? SPOOL filename 把查询的数据结果存储在filename 中 求:oracle Instant Client下载 请教Oracle较好的第三方工具 database操作 如何在order by 里使用decode()函数 外键问题!高分 数据区间重叠处理问题 oracle 客户端安装报path错误 Rman进程把换页空间涨爆
这个建个表,在可空字段中建立索引,插入多些数据(因数据少了,执行计划可能执行全表扫描),执行查询where条件中设置此字段查询,看下执行执行计划,应是走你的索引的,若是这样,则结论:可以,合理,不失效我没试,因只有记事本,没法试,呵呵
1、可以建
2、但是不合理
3、不失效
例如,select count(*)就不能利用到这个索引,因为null的记录不会进入索引;
但是如果,你的查询只是要返回这个字段不为null的记录,就应该创建这个索引。