随笔分类 - Oralce
摘要:--可以实现将多列记录聚合为一列记录,实现数据的压缩 --基本语法:listagg(xxx,xxx) within group( order by xxx) --select id, name, sex, score from student order by id for update; sele
阅读全文
摘要:--会话级临时表是指临时表的数据只在会话生命周期中存在,当用户退出会话的时候,Oracle自动清除临时表中的数据 create global temporary table tmp_Preserve_student( stu_id varchar2(4), stu_name varchar2(100
阅读全文
摘要:语法格式 1. lag(column1, N, "xxxx") over(partition by column2 order by column3) 在查询中取出同一字段的前N行作为独立的列。 按照column2进行分组并且根据column3进行排序,取column1的前N(往前数第N行)的列值,
阅读全文
摘要:/* Parttion by 关键字是Oracle中分析性函数的一部分, 它和聚合函数不同的地方在于它能够返回一个分组中的多条记录, 而聚合函数一般只有一条反映统计值的结果。 */ --示例查询出每个部门工资最低的员工编号【每个部门可能有多个最低的工资员工】 create table tsaler(
阅读全文
摘要:物化视图是一种特殊的物理包,“物化”(materialized)视图是相对普通视图而言的普通视图是虚拟表,应用的局限性大,任何对视图的查询,Oracle都实际转化视图SQL语句的查询。这样对整体查询性能的提高,并没有实质上的好处。 物化视图的创建本身是很复杂和需要优化参数设置的,特别是针对大型生产数
阅读全文
摘要:--测试数据准备 -- 建表 create table student( stu_id varchar2(4), stu_name varchar2(100), --姓名 sex varchar2(1), --性别 1 男 2 女 0 未知 credit integer default 0 ); -- 插入数据 insert into student (stu_id, stu_na...
阅读全文
摘要:查看测试数据 select * from student; 1. like 在where字句中使用like可以达到模糊查询的效果,常用通配符如下 ▶ %: 使用 % 有三种情况 ① 字段 like ‘%关键字%’字段包含”关键字”的记录 select * from student where stu
阅读全文
摘要:强制启用oralce的多线程处理功能。 并行查询允许将一个sql select 语句划分为多个较小的查询,每个部分的查询并发的运行,然后将各个部分的结果组合起来,提供最终的结果,多用于全表扫描,索引全扫描等,大表的扫描和连接,创建大的索引,分区索引扫描,大批量插入更新和删除。 Parallel分类
阅读全文
摘要:使用一条SQL语句进行insert或者Update操作,如果数据库中存在数据就update,如果不存在就insert。 Merge Into的原理是,从using 搜出来的结果逐条与on条件匹配,然后决定是update还是Insert。 当using后面的SQL没有查询到数据的时候,Merge In
阅读全文
摘要:Analyze使用场景 之前很多次都说到,对表的索引等信息进行了增删改之后,需要对表进行analyze更新统计信息,才能使数据库做出最好的执行计划,没有注意到,即使是一张很小的空表,如果进行了字段的增删改,也需要进行analyze,否则,执行计划也会出错。 实际使用中,在给T1(新建宽表,频繁更新字
阅读全文
摘要:1 描述 所谓直接路径操作,就是绕过buffer cache,直接将数据插入到表所在的数据文件中; 假如有表A,要将A中的数据插入到表B,在普通的间接插入下,先将A中的数据块传进buffer cache,再将B中的块也传入到buffer cache,在buffer cache的A块中读出行,插入B的
阅读全文
摘要:Oracle Hints是一种机制,用来告诉优化器按照我们的告诉它的方式生成执行计划。我们可以用Oracle Hints来实现: ① 使用的优化器的类型 ② 基于代价的优化器的优化目标,是all_rows还是first_rows。 ③ 表的访问路径,是全表扫描,还是索引扫描,还是直接利用rowid。
阅读全文
摘要:Oracle的优化器有两种优化方式,即基于规则的优化方式(rule-based optimization 简称RBO)和基于代价的优化方式(cost-based optimization 简称CBO),在oralce 8以及以后的版本,Oracle强烈推荐CBO的方式。 ▶ RBO方式:oralce
阅读全文
摘要:1. 概述 闪回技术是oralce强大备份机制的一部分,在数据库发生逻辑错误的时候,闪回技术能提供快速且小损失的恢复(多数闪回功能都能在数据库的联机状态下完成)。需要注意的是,闪回技术旨在快速恢复逻辑错误,对于物理损坏或者是介质丢失的错误,闪回技术就回天回天乏术了,还得借助于Oracle的一些高级的
阅读全文
摘要:1. REDO(重做信息) Redo log file(重做日志文件),是数据库的事务日志。 Oracle维护着两类重做日志文件:在线(online)重做日志文件和归档(archived)重做日志文件,这两类重做日志文件用于实例失败或是介质失败时数据的恢复; 如果数据库所在主机突然断电导致实例失败,
阅读全文
摘要:Oracle 配置文件目录 ① 在oracle安装目录下,找D:\oracle\product\10.2.0\client_1\NETWORK\ADMIN中的tnsnames.ora文件,找到之后,配置相关属性 ② tnsnames.ora文件修改内容。 TOUGU= --(备注:Databasen
阅读全文
摘要:游标,是SQL的一个内存工作区,用来存放select的结果集。 游标用来处理数据库检索的多行记录(使用select语句)。利用游标,程序可以逐个的处理和遍历一次索引返回的结果集。 在数据库中,存在两种游标,静态游标(隐式和显式)、ref游标(+游标变量) 示例数据准备 -- 建表 create ta
阅读全文
摘要:对于分区表,可以建立不分区索引。也就是说表分区,但是索引不分区。以下着重介绍分区表的分区索引。 索引与表一样,也可以分区。索引分为两类:locally partition index(局部分区索引)、globally partition index(全局分区索引)。 1. 局部分区索引(locall
阅读全文
摘要:1. 说明 ① 索引是数据库的对象之一,用于加快数据的检索,类似于书籍的索引。在数据库中索引可以减少数据库程序查询结果时所需要的读取的数据量,类似于在书籍中我们利用索引可以不用翻阅整本书即可找到想要的信息。 ② 索引是建立在表上的可选对象;索引的关键在于通过一组排序后的索引键来取代默认的全表扫描方式
阅读全文
摘要:本文使用的数据库版本为oracle 10.0.3.1703。 1. 分区表概述 ▶ 分区表就是通过分区技术,将一张大表,拆分成多个表分区(独立的segment),从而提升数据的访问性能,以及日常的可维护性。 ▶ 分区表中,每个分区的逻辑结构必须相同。如:列名、数据类型。 ▶ 分区表中,每个分区的物理
阅读全文

浙公网安备 33010602011771号