暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
Oracle Date 字段索引使用测试.pdf
793
5页
4次
2022-07-21
5墨值下载
准备数据
1 SQL>createtablet1(idnumber,t_datedate);
2 SQL>insertintot1values(1,to_date('2022‐01‐11','yyyy‐mm‐dd'));
3 SQL>insertintot1values(2,to_date('2022‐02‐11','yyyy‐mm‐dd'));
4 SQL>insertintot1values(3,to_date('2022‐03‐11','yyyy‐mm‐dd'));
5 SQL>insertintot1values(4,to_date('2022‐04‐11','yyyy‐mm‐dd'));
6 SQL>insertintot1values(5,to_date('2022‐05‐11','yyyy‐mm‐dd'));
7 SQL>insertintot1values(6,to_date('2022‐06‐11','yyyy‐mm‐dd'));
8 SQL>insertintot1values(7,to_date('2022‐07‐11','yyyy‐mm‐dd'));
9 SQL>insertintot1values(8,to_date('2022‐08‐11','yyyy‐mm‐dd'));
10 SQL>insertintot1values(9,to_date('2022‐09‐11','yyyy‐mm‐dd'));
11 SQL>insertintot1values(10,to_date('2022‐10‐11','yyyy‐mm‐dd'));
12 SQL>insertintot1values(11,to_date('2022‐11‐11','yyyy‐mm‐dd'));
13 SQL>insertintot1values(12,to_date('2022‐12‐11','yyyy‐mm‐dd'));
14 SQL>commit;
15 SQL>createindext_date_indont1(t_date);
一、to_date格式不同,影响查询是否走索引:
1、未使用索引:wheret_date=to_date(‘2022-03-11’,‘yyyy-mm-dd’);
1 SQL>Select*fromt1wheret_date=to_date('2022‐03‐11','yyyy‐mm‐dd');
2
3 IDT_DATE
4 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
5 311MAR22
6 ExecutionPlan
7 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
8 Planhashvalue:3617692013
9 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
10 |Id|Operation|Name|Rows|Bytes|Cost(%CPU)|Time|
11 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
‐‐
12 |0|SELECTSTATEMENT||1|22|2(0)|00:00:01|
13 |*1|TABLEACCESSFULL|T1|1|22|2(0)|00:00:01|
14 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
‐‐
15 PredicateInformation(identifiedbyoperationid):
16 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
17 1filter("T_DATE"=TO_DATE('2022‐03‐1100:00:00','syyyy‐mm‐ddhh24:m
i:ss'))
2、使用索引:wheret_date=to_date(‘2022-03-11’,‘yyyy-mm-ddhh24:mi:ss’);
1 SQL>Select*fromt1wheret_date=to_date('2022‐03‐11','yyyy‐mm‐ddhh24:
mi:ss');
2
3 IDT_DATE
4 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
5 311MAR22
6 ExecutionPlan
7 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
8 Planhashvalue:4277157620
9 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
10 |Id|Operation|Name|Rows|Bytes|Cost(%CPU)|Time|
11 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
12 |0|SELECTSTATEMENT||1|22|2(0)|00:00:01|
13 |1|TABLEACCESSBYINDEXROWID|T1|1|22|2(0)|00:00:01|
14 |*2|INDEXRANGESCAN|T_DATE_IND|1||1(0)|00:00:01|
15 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
16 PredicateInformation(identifiedbyoperationid):
17 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
18 2access("T_DATE"=TO_DATE('2022‐03‐11','yyyy‐mm‐ddhh24:mi:ss'))
二、数据量在全表数据的10%以上,有可能走的是全表扫描,而不走索引。
1)查询结果在全表数据的10%:未走索引
1 SQL>Select*fromt1wheret_date>to_date('2022‐03‐11','yyyy‐mm‐ddhh24:
mi:ss');
2 IDT_DATE
3 ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
4 411APR22
5 511MAY22
6 611JUN22
7 711JUL22
8 811AUG22
9 911SEP22
10 1011OCT22
of 5
5墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文档被以下合辑收录

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜