- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
Oracle面试高频题及实战答案
一、基础语法与核心概念(初级)
问题:Oracle中TRUNCATE和DELETE的区别?实际开发中怎么选?
答案:核心区别在事务、性能和自增列。DELETE是DML语句,支持事务回滚,会记录redo日志,删除大数据量时慢,且不重置自增列(如SEQUENCE关联的主键);TRUNCATE是DDL语句,隐式提交事务,不记录详细redo日志,速度极快,会重置自增列(若表有依赖约束可能执行失败)。实际选:小数据量删除、需条件过滤(带WHERE)或可能回滚时用DELETE;清空整张表且无需回滚、追求效率时用TRUNCATE,注意先解除外键依赖。
问题:什么是Oracle表空间?和数据文件的关系是什么?
答案:表空间是Oracle逻辑存储单元,用于管理数据的存储分配,相当于“文件夹”;数据文件是物理存储文件(.dbf格式),相当于“文件”。一个表空间可对应多个数据文件,一个数据文件只能属于一个表空间。实际用途:按业务模块(如用户表空间、日志表空间)或数据类型(如索引表空间、大字段表空间)划分表空间,方便权限控制、备份恢复和性能监控(比如单独监控大表所在表空间的磁盘使用率)。
问题:UNION和UNIONALL的区别?什么时候用后者?
答案:共同点是合并多个查询结果集,要求列数和数据类型一致;区别是UNION会去重并排序,UNIONALL直接合并不处理,性能更优。实际场景:如果确定多个查询结果集无重复数据(如按时间范围分表查询、不同业务模块的独立数据),优先用UNIONALL;若可能有重复且需去重,才用UNION(注意:去重会消耗额外资源,大数据量慎用)。
二、性能优化(中级)
问题:Oracle索引的类型有哪些?怎么判断一张表是否需要建索引?
答案:常用索引类型:B树索引(默认,适合等值查询、范围查询)、位图索引(适合低基数列,如性别、状态,批量操作场景)、函数索引(适合WHERE子句中带函数的查询,如WHEREUPPER(name)=ZHANG)、分区索引(对应分区表)。
判断是否建索引:①看查询频率:高频查询(如分页、条件过滤)的列优先考虑;②看列基数:高基数列(如身份证号、手机号)适合建B树索引,低基数列建位图索引;③看写操作比例:若表频繁插入、更新、删除,索引会增加开销(每次写操作需同步维护索引),需权衡;④看查询条件:WHERE子句、JOIN条件、ORDERBY/GROUPBY涉及的列,建索引能提速。
反例:小表(数据量1万)无需建索引(全表扫描更快);频繁更新的低基数列(如订单状态,频繁从“待支付”改“已支付”)不建议建索引。
问题:SQL优化的常见思路?遇到慢查询怎么排查?
答案:SQL优化思路:①避免全表扫描:确保查询条件命中索引,避免WHERE子句中用函数操作索引列、用!=//ISNOTNULL、模糊查询%XXX(前缀通配符);②优化JOIN:优先用INNERJOIN(比LEFTJOIN高效),小表驱动大表,JOIN条件用索引列;③减少DISTINCT和ORDERBY:DISTINCT去重、ORDERBY排序会消耗资源,能避免则避免(如通过索引排序,而非内存排序);④批量操作:用INSERTALL替代循环单条插入,MERGEINTO替代UPDATE+INSERT;⑤避免空值判断:ISNULL可能导致索引失效,可通过默认值替代。
慢查询排查步骤:①用EXPLAINPLANFOR查看执行计划,重点看是否有“FULLTABLESCAN”(全表扫描)、“INDEXRANGESCAN”(索引范围扫描),判断索引是否生效;②查V$SQL视图,通过ELAPSED_TIME(执行时间)、BUFFER_GETS(逻辑读)定位慢SQL;③分析表统计信息:若统计信息过时(如大量数据插入后未更新统计),用ANALYZETABLE表名COMPUTESTATISTICS更新;④查看锁和等待事件:用V$LOCK、V$SESSION_WAIT排查是否有锁阻塞或资源等待(如磁盘I/O、CPU瓶颈)。
问题:什么是分区表?分区表的优势和适用场景?
答案:分区表是将大表按特定规则(如范围、列表、哈希)拆分成多个小的“分区”,每个分区独立存储(可对应不同表空间)。
优势:①提升查询性能:查询时只扫描相关分区(如查询2023年订单,只扫2023年分区),减少数据扫描量;②方便维护:可单独对分区进行备份、恢复、删除(如删除3年前的历史分区,无需整表操作);③均衡存
您可能关注的文档
- MBA管理类联考模拟试题及参考答案.docx
- MBA管理类联考模拟试题及答案解析.docx
- MBA考试模拟题及答案解析.docx
- MBA面试高频题目及真诚应答参考.docx
- MBA面试高频真题及参考答案.docx
- MBA面试核心题库及实战答案.docx
- MBA综合能力测试题及答案解析.docx
- MBTI人格测试典型题目及解析指南.docx
- MBTI人格类型测试题(生活化版).docx
- MBTI性格倾向测试(生活化版).docx
- 3.1笔墨之美 课件 2025湘美版美术八年级上册.pptx
- 4.10认识船(教学课件)科学人教鄂教版二年级上册2025.pptx
- 第12课《 巧妙化解冲突》 课件 北师大版心理健康八年级上册.pptx
- 浙教版信息科技四年级下册全册教学设计教案.docx
- 2.3游戏中的观察(教学课件)科学教科版一年级上册2025.pptx
- 第13课《 合作的秘诀》课件 北师大版心理健康七年级上册.pptx
- 5.24 制作“冰琥珀”(教学课件)科学青岛版五四制三年级上册2025.pptx
- 人自然社会第9课《面对考试,你准备好了吗》课件.pptx
- 浙教版信息科技四年级下册全册学习任务单.docx
- 4.10认识船(教学课件)科学人教鄂教版二年级上册2025.ppt
最近下载
- 2025秋统编版(2024)道德与法治三年级上册第三单元《第9课 让我们的学校更美好》教学设计.docx VIP
- 2025团校入团积极分子题库(含答案).docx
- 腰椎术后脑脊液漏护理查房.pptx VIP
- 人教版三年级英语上册单词及常用表达法默写纸.pdf VIP
- 世界社会主义的曲折与奋起(上)——《社会主义发展简史》之十PPT课件.pptx VIP
- 化工生产安全员招聘安全生产.pdf VIP
- 2023医生述职报告推荐5篇.docx VIP
- 劳务派遣劳务公司组织结构及部门说明方案.docx VIP
- 2025至2030年中国智能声级计行业发展研究报告.docx
- 四川省住宅物业管理规程.pdf VIP
原创力文档


文档评论(0)