首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

oracle 查询转换初探

Oracle‍‍查询转换初探 作者‍:邱大龙‍‍ 概述 Oracle查询转换器的作用是把原始sql重写为语义相同的语句,目的是为了获得更高效的sql。...查询转换主要有四种技术:子查询展开,视图合并,谓词推入,星型转换。 了解查询转换是掌握SQL优化的基础,本文将对这四种技术做一些简单的介绍。...子查询展开 子查询展开是指优化器不再把子查询作为独立的单元处理,而是转换成等价的join方式。...星型转换 星型转换为提高星型查询的效率发生,在原有条件基础上会产生新的子查询对事实表做过滤,然后通过对事实表相应连接列的位图索引做位图操作,达到过滤事实表结果集的目的。...是否开启星型转换受参数star_transformation_enabled控制,可以设置为: true:优化器将考虑基于成本的星型查询转换; false:禁止星型转换; temp_disable:优化器将考虑基于成本的星型查询转换

1.5K50

性能优化之查询转换 - 子查询

查询,是SQL中常见的一种写法。对于优化器来说,子查询是较难优化的部分。Oracle提供了多种方式,对子查询进行查询转换。...1 子查询推进 子查询推进(又称子查询推入)是指优化器将子查询提前进行评估,使得优化器可以更早地介入优化以获得更优质的执行计划。这个技术可以通过提示PUSH_SUBQ/NO_PUSH_SUBQ控制。...2 子查询解嵌套、展开 子查询解嵌套是指优化器将子查询展开,和外部的查询进行关联、合并,从而得到更优的执行计划。可以通过UNNEST/NO_UNNEST提示控制是否进行解嵌套。...4 子查询合并 在语义等价的前提下,如果多个子查询产生的结果集相同,则优化器可以使用这种技术将多个子查询合并为一个子查询。这样的好处在于减少多次扫描产生的开销。...5 子查询实体化 子查询实体化是指在上面WITH定义的查询中,将查询结果写入一张临时表中,后续的查询直接利用临时表中的数据。可以通过MATERIALIZE提示来控制。下面看个示例。

1.5K61

Oracle里的查询转换

Oracle里的查询转换,有称为查询改写,指oracle在执行目标sql时可能会做等价改写,目的是为了更高效的执行目标sql在10g及其以后的版本中,oracle会对某些类型的查询转换(比如子查询展开、...复杂视图合并等)计算成本,oracle会分别计算查询转换后的等价改写的sql的成本和原始sql的成本,如果改写后的sql的成本低于原始sql的成本,oracle才会对目标sql执行查询转换。...指优化器不在将子查询当做一个独立的单元来处理,而是将该子查询转为它自身和外部查询之间的等价的表连接,将子查询拆开, 将子查询中的表、视图从子查询中拿出来,然后后外部查询的表、视图做连接,或者会把该子查询转换为一个内嵌视图...2 对���不拆开的子查询会把它转换为一个内嵌视图的子查询展开。 对于第一种情况,Oracle 10g及以后的版本中,Oracle也不会考虑子查询展开的成本。...  oracle将目标sql等级的改写成按分区union all的形式,不可用index union all可用index 11g r2引入 对同一个目标sql而言,oracle可能会采用不止一种的查询转换手段

1.8K20

Linux磁盘格式化,磁盘挂载,手动增加swap空间

l 4.5 磁盘格式化(上) l 4.6 磁盘格式化(下) l 4.7 磁盘挂载(上) l 4.7 磁盘挂载(下) l 手动增加swap空间 4.5 磁盘格式化(上)   将磁盘划分分区之后,就需要对磁盘进行格式化才能够进行使用...,格式化需要选择一个文件系统来进行格式化,使用cat /etc/filesystems 命令可以查看Linux里支持的文件系统: ?  ...4.6 磁盘格式化(下) 3.mke2fs -m此选项可以指定某个磁盘分区的预留容量的大小。...dd命令是用来操作磁盘的 if是指定从哪里去读取 /dev/zero是Linux内核的造0器,可以产生源源不断的0 of是指定将0写入到哪个文件里 bs是指定每个块的大小 count是指定newdisk

2.9K20

Grafana 查询数据和转换数据

系列文章,版本:OOS v9.3.1 Grafana 的介绍和安装 Grafana监控大屏配置参数介绍(一) Grafana监控大屏配置参数介绍(二) Grafana监控大屏可视化图表 Grafana 查询数据和转换数据...介绍 Grafana能够支持各种类型的数据源,提供对应数据源的查询编辑器,通过数据源查询并对得到的数据进行转换和可视化。...选项卡 2、选择要使用的转换类型,不同的转换类型配置不同 3、要新增转换类型,点击Add transformation 4、使用右上角调式按钮可以调式转换 支持的转换类型: Add field...-长格式进行转换 Reduce 压缩字段 Rename by regex 使用正则表达式和替换模式重命名部分查询结果 Rows to fields 将行转换为字段 Series...to rows 将行转换为单独的字段 Sort by 字段排序 Spatial operations 将空间操作应用于查询结果中 其他文章: Spring Boot Admin

4.1K30

ESXI安装群晖DSM7教程

1、登录到ESXI的管理主界面,点“创建/注册虚拟机”; 2、创建虚拟机,下一步; 3、名称可以自己拟定,客户机操作系统系列选择“Linux”,客户机操作系统版本选择“其他 2.6.X Linux(...file”,Next; 8、点“...”选择群晖DS918+的引导IMG文件; 9、找到引导文件(路径和文件名不能有中文,也不能有特殊字符,并且文件名不宜太长),点“打开”; 10、点Next即将开始转换...image(微软Hyper-V可扩展映像VHDX): 适用于微软Hyper-V的虚拟磁盘格式,该映像的磁盘空间按需分配,大小因映像的增加而增加 QCOW2 disk image(Linux中Kvm构架使用的格式...): Linux中Kvm构架虚拟磁盘格式 Raw image(img磁盘映像格式): 该功能是把虚拟机磁盘转换为img磁盘映像格式 12、输入ESXI的IP地址、用户名和密码后点Next; 13、...14、等待100%完成后点Finish; 15、回到ESXI的界面,在左边菜单点“虚拟机”,找到刚才建立的DS918,点右边菜单的“编辑”; 16、添加硬盘; 17、选择刚才保存的路径,找到转换后的引导文件

3.2K10

ESXI安装群晖DSM6教程

1、登录到ESXI的管理主界面,点“创建/注册虚拟机”; 2、创建虚拟机,下一步; 3、名称可以自己拟定,客户机操作系统系列选择“Linux”,客户机操作系统版本选择“其他 3.X Linux(64...file”,Next; 8、点“...”选择群晖DS918+的引导IMG文件; 9、找到引导文件(路径和文件名不能有中文,也不能有特殊字符,并且文件名不宜太长),点“打开”; 10、点Next即将开始转换...image(微软Hyper-V可扩展映像VHDX): 适用于微软Hyper-V的虚拟磁盘格式,该映像的磁盘空间按需分配,大小因映像的增加而增加 QCOW2 disk image(Linux中Kvm构架使用的格式...): Linux中Kvm构架虚拟磁盘格式 Raw image(img磁盘映像格式): 该功能是把虚拟机磁盘转换为img磁盘映像格式 12、输入ESXI的IP地址、用户名和密码后点Next; 13、...14、等待100%完成后点Finish; 15、回到ESXI的界面,在左边菜单点“虚拟机”,找到刚才建立的DS918,点右边菜单的“编辑”; 16、添加硬盘; 17、选择刚才保存的路径,找到转换后的引导文件

1.8K20
领券