日期:2014-05-16  浏览次数:20734 次

问个数据存储问题
现在有很多表,结构不同,现在想把他们整合到一起


因为表结构不一样,我现在想建一个新表,然后把其它的写程序导过来


新表结构很全,就是字段很全,这样会影响查询吗? 如果一些字段在有些表里是null,那么,在新表也是null,如果是null,在新表会占用存储空间吗?会影响查询吗?



------解决方案--------------------
不要在null字段建索引,null建索引,索引查询没什么效果?

无论是单列唯一索引或复合唯一索引,对于可以为null的列或复合null值,Oracle不会为其存储索引值。
    故在基于单列创建B树唯一索引或多列创建B树复合唯一索引的情形下,
    当列上允许为null值时
        where子句使用了基于is null的情形,其执行计划走全表扫描。
        where子句使用了基于is not null的情形,其执行计划走索引扫描(索引范围扫描或索引全扫描)。
    当列上不允许为null值时,存在非null约束
        where子句使用了基于is null的情行,其执行计划走索引扫描。
        where子句使用了基于is not null的情形,其执行计划也是走索引扫描。