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

INDEX受到NULL值的影响
假设现在有如下一张表:
CREATE TABLE TBL(
    USERID NUMBER(20),
    NAME VARCHAR2(20),
    DEPTNO NUMBER(20)
)
;
--模拟数据
BEGIN
    FOR I IN 0..1000 LOOP
        INSERT INTO TBL VALUES(
        I,CONCAT('TBL',I),MOD(I,2));
    END LOOP;
END;
/
SELECT * FROM TBL;
在这张表的数据上面建立了如下的索引:
CREATE INDEX INDEX_TBL_NAME_DEPTNO ON TBL(NAME,DEPTNO);
在这张表上,修改了name和deptno两列为not null:
alter table tbl modify(name not null);
alter table tbl modify(deptno not null);

我们在这张表上执行如下查询:
ChenZw> select name,deptno from tbl order by name,deptno;
已选择1001行。
已用时间:  00: 00: 00.03
执行计划
----------------------
Plan hash value: 2449324302
------------------------------------------------------
| Id  | Operation        | Name                  | Rows  | Bytes | Cost (%CPU)| Time     |
------------------------------------------------------
|