1,对比建索引和不建索引的查询效率
首先随机生成1000000条数据
DECLARE
v_id NUMBER;
v_name VARCHAR2(100);
BEGIN
FOR i IN 1..1000000 LOOP -- 生成 1000000 行数据
v_id := i;
-- 生成随机名字
v_name := dbms_random.string('A', 6);
-- 插入数据
INSERT INTO TABLE01 (id, name) VALUES (v_id, v_name);
END LOOP;
COMMIT;
END;
/
使用EXPLAIN PLAN来获取执行计划,而后通过另一个语句来查询执行计划
/*EXPLAIN PLAN FOR
SELECT * FROM TABLE01
WHERE NAME='dtbsoweEHz';*/
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);
查询结果如下图:
1,建索引前后的查询实践对比,模糊查询没啥影响
2,而以下这种查询会有明显的时间提升
3,在id列建索引前后,对于id的范围查询没有影响