暂无图片
不熟悉客户的业务流程和业务逻辑,能否做SQL语句优化?
我来答
分享
zymh_zy
2021-12-24
不熟悉客户的业务流程和业务逻辑,能否做SQL语句优化?

如题,问一下,不熟悉客户的业务流程和业务逻辑,能否做好SQL语句优化?还是单纯只靠执行计划来优化SQL?

我来答
添加附件
收藏
分享
问题补充
4条回答
默认
最新
chengang

不熟悉业务也能做。
只是不能大改SQL原有逻辑

执行计划,表上的索引等信息可以优化SQL语句,但实际要去大改SQL语句的逻辑情况也是较少的。

熟悉业务是优化的加分项不是必须项。

暂无图片 评论
暂无图片 有用 3
打赏 0
zymh_zy
题主
2021-12-24
ok.
Uncopyrightable

Oracle 自动索引特性就是类似情况,根据Oracle自身的报告、建议生成的sql优化;

暂无图片 评论
暂无图片 有用 0
打赏 0
zymh_zy
题主
2021-12-24
ok.
ycc

要看性能瓶颈在哪,如果是在SQL、执行计划、表结构上,那就可以不用熟业务;这些已经可以解决不少部问题了,但如果优化涉及到改写、重构,那就要了解业务了; 

暂无图片 评论
暂无图片 有用 1
打赏 0
DarkAthena

我倒是觉得 ,如果 熟悉客户的业务流程和业务逻辑 ,那么在某些sql优化上,可以获得不一样的思路。

比如有时候为了获取一个字段代码的翻译,去关联了一个超大表,但你如果熟悉业务的话,会知道这个字段代码翻译有在另一个小表存,这样就可以把表换掉。

有些业务逻辑思路不强,经常会绕着弯来提需求,但如果熟悉业务,给他抽丝剥茧,会发现根本没那么麻烦,之前是一个复杂缓慢的sql,完全可以用一个简单高效的sql等价替换

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
oracle 创建视图时edtionable参数是什么意思?
回答 1
已采纳
请参照官方文档: https://docs.oracle.com/database/121/SQLRF/statements8004.htmSQLRF01504如果能帮到您,请点个采纳,谢谢
BTRobot_v2.2.7在RAC集群下巡检报错
回答 1
看你第一张图应该是在节点1执行的,根据提示你需要手动在节点2的Oracle用户下执行屏幕上打印出来的命令,应该就是你第一张图截图的最后一行的下一行,你没截上,第二张图应该是你没手动执行脚本,没有采集到
oracle 监听里的 log.xml 和 listener.log有什么区别
回答 1
已采纳
自问自答Oracle监听器的listener.log文件和log.xml文件都记录了有关监听器操作的信息。listener.log文件是一个文本文件,其中包含有关监听器操作的时间戳和文本消息。log.
Oracle 11g rac 归档放在共享存储好还是放在本地?
回答 1
已采纳
如果在共享存储有asm相对安全,但是占空间有点浪费。如果在本地有可能空间不足。各有利弊。
巡检脚本巡检时,每次到这就不动了
回答 2
可以看下目录下的BTRobot.log日志文件。
Oracle收集统计信息的维护窗口在你收集完所有对象的统计信息前结束了。在这个情况下,那种说法是正确的?
回答 2
已采纳
C作业将终止,剩下的对象将在下次维护窗口打开时进行收集
oracle某张表数据量特别大,但需要保留半年的时间 ,这台服务器没这么大,有没有什么办法可以实现保留半年数据?
回答 4
从其它有足够空间的服务器上创建NFS共享盘,将其映射到你这台服务器上,然后添加对应表空间的数据文件到共享盘中即可实现扩容。
DG数据库无法同步
回答 6
3795
Oracle 如果要查询加速,已经设置了多字段复合unique索引,还需要分开设置单字段索引吗?
回答 1
已采纳
要看你where后面的条件是否全部按顺序使用到了多字段复合unique索引,否则不一定走复合unique索引。
oracle 备份指定归档的命令是什么?
回答 1
已采纳
plusarchivelog参考https://docs.oracle.com/cd/E1188201/backup.112/e10643/rcmsynta007.htmRCMRF107