京公网安备 11010802034615号
经营许可证编号:京B2-20210330

作者:马立和 高振娇 韩锋
来源:大数据DT(ID:hzdashuju)
内容摘编自《数据库高效优化:架构、规范与SQL技巧》
select table_name,index_name,leaf_blocks,num_rows,clustering_factor from user_indexes where table_name in ('T1','T2'); TABLE_NAME INDEX_NAME LEAF_BLOCKS NUM_ROWS CLUSTERING_FACTOR -------------- -------------- ---------------- ---------- --------------------- T1 SYS_C0025294 6275 3200000 31520 T2 SYS_C0025295 13271 3200000 632615
select * from t2 where id between '3199990' and '3200000'; -------------------------------------------------------------------------------- | Id | Operation | Name |Rows|Bytes |Cost(%CPU)| Time | -------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 6| 390 | 5 (0)|00:00:01| | 1 | TABLE ACCESS BY INDEX ROWID| T2 | 6| 390 | 5 (0)|00:00:01| |* 2 | INDEX RANGE SCAN | SYS_C0025295 | 6| | 3 (0)|00:00:01| -------------------------------------------------------------------------------- Statistics ---------------------------------------------------------- 1 recursive calls 0 db block gets 13 consistent gets 0 physical reads
案例03 规范SQL写法好处多
1. 案例说明select ... from ... where ( ( order_creation_date>= to_date(20120208,'yyyy-mm-dd') and order_creation_date<to_date(20120209,'yyyy-mm-dd') ) or ( send_date>= to_date(20120208,'yyyy-mm-dd') and send_date<to_date(20120209, 'yyyy-mm-dd') ) ) andnvl(a.bd_id,0) = 1 -------------------------------------------------------------------------------- | Id | Operation | Name |Cost (%CPU)| Time |Pstart | Pstop | -------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 2470K(100)| | | | | 1 | SORT GROUP BY | | | | | | | 2 | TABLE ACCESS BY GLOBAL INDEX ROWID | XXXX | 5 (0) | 00:00:01 | ROW L | ROW L | | 3 | NESTED LOOPS | | 2470K (1) | 08:14:11 | | | | 4 | VIEW |VW_NSO_1| 2470K (1) | 08:14:10 | | | | 5 | FILTER | | | | | | | 6 | HASH GROUP BY | | 2470K (1)| 08:14:10 | | | | 7 | TABLE ACCESS BY GLOBAL INDEX ROWID | XXXX | 5 (0)| 00:00:01 | ROW L | ROW L | | 8 | NESTED LOOPS | | 2470K (1)| 08:14:10 | | | | 9 | SORT UNIQUE | | 2340K (2)| 07:48:11 | | | | 10 | PARTITION RANGE ALL | | 2340K (2)| 07:48:11 | 1 | 92 | | 11 | TABLE ACCESS FULL | XXXX | 2340K (2)| 07:48:11 | 1 | 92 | | 12 | INDEX RANGE SCAN | XXXX | 3 (0)| 00:00:01 | | | | 13 | INDEX RANGE SCAN | XXXX | 3 (0)| 00:00:01 | | | --------------------------------------------------------------------------------
select ... from ... where order_creation_date >= to_date(20120208,'yyyy-mm-dd') and order_creation_date<to_date(20120209,'yyyy-mm-dd') union all select ... from ... where send_date>= to_date(20120208,'yyyy-mm-dd') and send_date<to_date(20120209,'yyyy-mm-dd') and nvl(a.bd_id,0) = 5
select ... from ... where ( ( order_creation_date>= to_date(20120208,'yyyymmdd') and order_creation_date<to_date(20120209,'yyyymmdd') ) or ( send_date>= to_date(20120208,'yyyymmdd') and send_date<to_date(20120209,'yyyymmdd') ) ); -------------------------------------------------------------------------------- | Id | Operation | Name | Cost(%CPU)|Time | Pstart | Pstop | -------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 42358 (1)| 00:08:29 | | | | 1 | SORT AGGREGATE | | | | | | | 2 | CONCATENATION | | | | | | | 3 | PARTITION RANGE SINGLE | | 17393 (1)| 00:03:29 | 57 | 57 | |* 4 | TABLE ACCESS FULL | XXXX | 17393 (1)| 00:03:29 | 57 | 57 | |* 5 | TABLE ACCESS BY GLOBAL INDEX ROWID | XXXX | 24966 (1)| 00:05:00 | ROWID | ROWID | |* 6 | INDEX RANGE SCAN | XXXX | 658 (1)| 00:00:08 | | | ---------------------------------------------------------------------------------
select... from xxx a join xxx b on a.order_id = b.lyywzdid left join xxx c on b.gysid = c.gysid whereb.cdate>= to_date('2012-03-31', 'yyyy-mm-dd') – 3 and ... a.send_date>= to_date('2012-03-31', 'yyyy-mm-dd') - 1 and a.send_date<to_date('2012-03-31', 'yyyy-mm-dd'); -------------------------------------------------------------------------------- |Id | Operation |Name | Rows | Bytes | Cost (%CPU) |Pstart|Pstop| -------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | 104 | 9743(1)| | | | 1 | HASH JOIN OUTER | | 1 | 104 | 9743(1)| | | | 2 | TABLE ACCESS BY LOCAL INDEX ROWID | XXXX | 1 | 22 | 0(0)| 1189 | 1189| | 3 | NESTED LOOPS | | 1 | 94 | 9739(1)| | | | 4 | PARTITION RANGE ITERATOR | | 1032 | 74304 | 9739(1)| 123 | 518 | | 5 | TABLE ACCESS FULL | XXXX | 1032 | 74304 | 9739(1)| 123 | 518 | | 6 | PARTITION RANGE SINGLE | | 1 | | 0(0)| 1189 | 1189 | | 7 | INDEX RANGE SCAN | XXXX | 1 | | 0(0)| 1189 | 1189 | | 8 | TABLE ACCESS FULL | XXXX | 183 | 1830 | 3(0)| | | --------------------------------------------------------------------------------
exec dbms_stats.gather_index_stats( ownname=>'xxx', indname=>'xxx', partname=>'PART_xxx', estimate_percent => 10);
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
一、为什么指标体系需要"先定义、后建设" 在企业数据治理和数据分析实践中,几乎每个团队都遇到过这样的场景:业务部门说"这个月 ...
2026-10-19一、为什么需要客户分群 在用户运营和客户关系管理中,最忌讳的就是"一刀切"——对所有客户发同样的券、推同样的活动、说同样的 ...
2026-10-19????点击领取《数智化数据分析与 AI 应用实践营(体验课)》 【北京/远程】数智化数据分析与 AI 应用实践营将于11 月 14 日开课 ...
2026-10-19CDA数据分析师 出品 作者:李诗怡 题目1 一家餐厅统计顾客的性别、年龄、消费金额等信息,在进行数据分析时,发现性别这一变量在 ...
2026-10-16核心资源推荐 CDA教材(2025):https://edu.cda.cn/goods/show/3151CDA模拟题(2025):https://edu.cda.cn/goods/show/2845CD ...
2026-10-16核心资源推荐 CDA教材(2025):https://edu.cda.cn/goods/show/3151CDA模拟题(2025):https://edu.cda.cn/goods/show/2845CD ...
2026-10-16一、为什么要区分这两种分布 在数据分析和统计学中,拿到一组数据后第一件事通常就是看它的分布形态。分布形态决定了你能用什么 ...
2026-10-15一、问题现象 在实际使用 Excel 透视表做数据分析时,经常会遇到这样的情况:数据源表格里明明新增了一行或一列金额数据,数据源 ...
2026-10-15核心资源推荐 CDA教材(2025):https://edu.cda.cn/goods/show/3151CDA模拟题(2025):https://edu.cda.cn/goods/show/2845CD ...
2026-10-15一、什么是预测式发货 预测式发货(Anticipatory Shipping)是亚马逊于2013年12月获得授权的一项美国专利(专利号 US 8,615,473 ...
2026-10-14一、SQL在金融量化体系中的定位 量化投资的本质是用数据驱动决策,而数据处理贯穿量化研究的全生命周期。从原始行情数据清洗、因 ...
2026-10-14核心资源推荐 CDA教材(2025):https://edu.cda.cn/goods/show/3151CDA模拟题(2025):https://edu.cda.cn/goods/show/2845CD ...
2026-10-14CDA数据分析师 出品 作者:李诗怡 四层结构 · 零件与房子 · 六大易错点 一、什么是指标体系 定义:指标体系是整套完整框架 ...
2026-10-13写在开头 先还原一个你大概率见过的场面。 立项会上有人说:我们得做用户画像。 于是团队关进会议室,白板写满便利贴,两小时后 ...
2026-10-13 很多数据分析师每天都在计算指标、制作报表,但当被问到“什么叫指标数据元”“指标数据标准包含哪些核心维度”“指标数据质 ...
2026-10-13在统计学与数据分析研究中,相关性分析分为数值变量分析与分类变量分析两大类。针对身高、销量、分数等连续数值变量,通常采用皮 ...
2026-10-12在Power BI可视化分析体系中,常规表格仅能展示枯燥的数值数据,存在数据对比不直观、强弱规律不突出、维度交叉分析低效等问题。 ...
2026-10-12 很多数据分析师能熟练写SQL、做透视表,但当被问到“数据是从哪里来的?经过哪些加工才进入数据仓库?ETL具体做了什么?”时 ...
2026-10-12在传统零售行业同质化竞争激烈、大众营销转化率持续走低的背景下,依托经验与直觉的粗放式营销逐渐失效。美国塔吉特百货(Target ...
2026-10-10随着智能客服、数字化服务、用户精细化运营的快速普及,传统零散、非标准化的客户服务数据与业务体系逐渐难以支撑高效服务治理。 ...
2026-10-10