首页
/
行业洞察
/
正文
INDUSTRY INSIGHT · 深度
【SQL】01_全表扫描
📅 2026/11/4 6:43:26
✍️ 爱科研究院
👁 阅读 3,247
系列文章【Oracle】数据库服务器限制ip访问本文链接https://blog.csdn.net/youcheng_ge/article/details/122220930【Oracle】Excel导入数据教程本文链接https://blog.csdn.net/youcheng_ge/article/details/118722756【Oracle】数据库还原教程_数据泵本文链接https://blog.csdn.net/youcheng_ge/article/details/118054855【SQL】如何查询表字段并识别主键本文链接https://blog.csdn.net/youcheng_ge/article/details/110820405【SQL】outer apply的用法本文链接https://blog.csdn.net/youcheng_ge/article/details/79903489【SQL】多表连接重复数据处理本文链接https://blog.csdn.net/youcheng_ge/article/details/79903619MySQL安装教程详细本文链接https://blog.csdn.net/youcheng_ge/article/details/126037520MySQL卸载教程详细本文链接https://blog.csdn.net/youcheng_ge/article/details/129279265文章目录系列文章前言一、技术介绍二、数据脚本三、效果展示四、用法总结前言本专栏专注数据库原理与SQL实战。从建表、视图、索引等基础架构到增删改查CRUD、触发器、事务处理及安全授权全方位覆盖后端必备技能。拒绝碎片化学习系统掌握嵌入式SQL与企业级数据操作。对内容感兴趣持续关注不迷路任何疑问欢迎评论或私信探讨一、技术介绍视图的定义视图不是真实存在的基本表而是一个虚拟表二、数据脚本创建表createtabletab1(c1 number,c2 varchar2(20));createtabletab2(c3 number,c4 varchar2(20));插入数据declarebeginforrin1..99999loopbegininsertintotab1values(r,a);end;endloop;insertintotab1values(100000,b);commit;end;declarebeginforrin1..100000loopbegininsertintotab2values(r,c||to_char(r));end;endloop;commit;end;情况1查询SQL如下select*fromtab1 twheret.c15000;通过执行计划我们确认SQL执行了全表扫描需要建相关索引减少扫描的数据块。创建索引createindexcjq.idx_tab1_c1oncjq.tab1(c1)onlinecomputestatistics;再次执行SQL情况2查询SQL如下select*fromtab1 twheret.c2a;select*fromtab1 twheret.c2b;是否需要建如下索引createindexcjq.idx_tab1_c2oncjq.tab1(c2)onlinecomputestatistics;情况3查询SQL如下select*fromtab1 t1jointab2 t2ont1.c1t2.c3wheret2.c4c5000;删除之前创建的索引cjq.idx_tab1_c1dropindexcjq.idx_tab1_c1;SQL执行计划如下创建where条件索引tab2表c4列createindexcjq.idx_tab2_c4oncjq.tab2(c4)onlinecomputestatistics;SQL执行计划如下创建表关联列的索引tab1表c1列tab2表的c3列createindexcjq.idx_tab1_c1oncjq.tab1(c1)onlinecomputestatistics;createindexcjq.idx_tab2_c3oncjq.tab2(c3)onlinecomputestatistics;SQL执行计划如下衍生表的三种连接方式1、 nested loop join2、 hash join3、 merge joinmerge join SQL:select *from tab1 t1join tab2 t2 on t1.c1 t2.c3order by c1三、效果展示四、用法总结使用场景nested loop join两个数据源关联一个数据源数据量较大一个较小使用较小的数据源作为驱动表驱动表的每一行数据循环到大表中匹配匹配到即返回hash join两个数据源关联两个数据源的数据量均较大循环匹配比较耗时数据库一般把两个大表缓存到PGA内存中进行hash全表交叉匹配消耗的资源较多速度较慢merge joinhash join的特殊情况当两个数据源均较大且存在连接列的排序时数据库采用该种连接方式。
📌 标签:
工业官网
设计趋势
AI 建站
SEO
获取完整报告 →
RELATED ARTICLES
推荐阅读
2026/11/4 6:38:26
IPA 结构分析实战:用 REA 静态分析四步看清启动项与 dylib 加载链
2026/11/4 6:38:26
Komikku免费开源漫画阅读器完整使用指南:从入门到精通
2026/11/4 6:38:26
Komikku漫画阅读器:从技术架构到用户体验的深度解析
2026/11/4 7:33:31
PLM数字化转型实施路线图与瑞华丽系统落地指南
2026/11/4 7:33:31
Java自动化测试效率提升:智能编程助手实践
2026/11/4 7:33:31
工业上位机软件开发实战:架构设计与性能优化
2026/11/4 7:33:31
SQL Server日期转换实战:CONVERT函数详解与优化
2026/11/4 7:33:30
多Agent系统工业级优化:从通信协议到稳定性实战
2026/11/4 7:28:30
大数据与AI毕业设计选题指南与技术实践
2026/11/4 0:02:45
AI辅助技术栈评估:提升研发决策效率60%
2026/11/4 0:02:45
从生成Token到直接决策:Jev如何重塑AI Agent工程实践
2026/11/4 0:02:45
32G统一内存跑大模型:内存账、TPS实测与端云分流
2026/11/4 4:08:30
面向复杂光照与角度的宠物面部识别鲁棒性增强策略
2026/11/4 4:08:26
DRV8818PWPR与R7FA8M1AHECBD工业步进驱动实战指南
2026/11/4 4:08:23
STM32与DRV8818双极步进电机驱动方案:从选型到调试全流程解析
2026/11/4 4:08:30
面向复杂光照与角度的宠物面部识别鲁棒性增强策略
2026/11/4 4:08:26
DRV8818PWPR与R7FA8M1AHECBD工业步进驱动实战指南
2026/11/4 4:08:23
STM32与DRV8818双极步进电机驱动方案:从选型到调试全流程解析