自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Richie's 残酷舞台

残酷,是与对手的差距

  • 博客(58)
  • 资源 (1)
  • 收藏
  • 关注

原创 Oracle 层级查询 connect by prior再理解

Oracle 层级查询 connect by prior

2022-06-30 22:23:28 2122 1

原创 Oracle 统计信息

1.DBMS_STATS.GATHER_TABLE_STATS的语法DBMS_STATS.GATHER_TABLE_STATS (ownname VARCHAR2, tabname VARCHAR2, partname VARCHAR2, estimate_percent NUMBER, block_sample BOOLEAN, method_opt VARCHAR2, degree NU...

2019-09-17 18:13:12 563

原创 Oracle 分区执行计划详解

Part1. 分区执行计划的区别在F5中查看执行计划的时候总是看到很多信息:range分区 执行计划中出现的:分区表,按 n1 ,n2 分区partition range single:访问单个分区partition range iterator:访问多个分区 ---执行计划中的 PSTART/PSTOP 值代表什么 KEY...

2019-09-17 18:04:11 2865

原创 bat 常见指令初探

1. bat中 /w 是什么意思加了/w ,就是等待它完成后再进行下一步的操作。系统的帮助文件里说是“启动应用程序并等候它结束”2. pause, exitpause 等待任一输入结束指令;exit [:digital] 直接退出或等待xx秒后退出;3.一、call命令总结【1】call命令简介  学过汇编或C的朋友,肯定都知道call指令表示什么意思。其实...

2019-09-17 17:00:52 846 1

原创 隐藏hint,参数配置及相关优化

Oracle数据库有很多隐藏的参数配置文件,hint这些基本上属于不太会用到,但某些可以加入到代码中临时改变session参数。达到避免错误执行计划的效果, 仅列出几个第一次遇见的和链接1. 隐藏配置参数, 特点以 “_”下划线开头,+作用点(optimizer,db etc),+ 实际控制属性 + enabled(开关)alter system set “_optimizer_carte...

2019-09-17 16:38:48 1152

原创 数据表统计大小及容量计算

1. 有两种含义的表大小。一种是分配给一个表的物理空间数量,而不管空间是否被使用。可以这样查询获得字节数:方法一:select t.owner,t.segment_name,t.tablespace_name,sum(bytes/1024/1024/1024) gbfrom dba_segments twhere t.tablespace_name='&TBS_NAME'gro...

2019-09-17 16:29:54 3448

转载 转载- Oracle 聚簇因子(Clustering factor)

https://blog.csdn.net/robinson_0612/article/details/8847959;聚簇因子是 Oracle 统计信息中在CBO优化器模式下用于计算cost的参数之一,决定了当前的SQL语句是否走索引,还是全表扫描以及是否作为嵌套连接外部表等。如此这般,那到底什么是聚簇因子,那些情况下会影响到聚簇因子,以及如何提高聚簇因子?本文将对此展开描述。...

2019-07-16 09:06:54 130

原创 Oracle 逻辑存储结构--表空间 段 区 块 & 高水位线 HWM

Part 1 Oracle 逻辑存储结构一、各层逻辑结构组成1个数据库被分成不同的逻辑单元 即 表空间 (表空间的物理结构就是 数据文件)1个表空间里面的表,索引 由 段组成 (数据段,索引段等,临时段)1段由一块块并不连续的区组成1个区有一组数量固定(一般是8个)并且连续的块(oracle逻辑块 而不是 OS数据文件块)二、各层说明1. 块:数据库最小...

2019-07-16 09:05:44 321

转载 Oracle 中的各种读

(一)、物理读:把数据从数据块读取到buffer cache中1、第一次查询一个表tselect * from t ;2、第二次查询:select * from t;第一次查询有6次物理读,第二次查询有0个物理读。当数据块第一次读取到,就会缓存到buffer cache 中,而第二次读取和修改该数据块时就在内存buffer cache 了。3、数据块被重新读入buffer cac...

2019-06-14 13:48:34 347

原创 SQL语句调优 + 列直方图的理解&对执行计划的影响

Part 1:SQL语句调优背景说明:2019年5月申请Risk岗位,部门manager及技术manger提出的优化问题以考察技术知识。代码:--LOXON/MUCH - buffer for assignment engineSELECT dass.skp_client, dass.skp_contract, dass.skp_credit_case,...

2019-06-14 13:32:21 445

原创 TO_CHAR()函数中日期格式的使用--NLS_PARAMS

1. to_char() 是用于将日期、数字格式改成文本格式呈现其参数 为 to_char(values, 'format','NLS_PARAM')values--需要转变的值'format'--希望呈现的格式'NLS_PARAM'  ---可以是多种NLS_参数值,用于在to_char中临时指定 NLS_的显示形式 实例:SQL> set linesize 2...

2018-12-28 16:17:33 20464

原创 Oracle -Pivot的 行变列的具体操作

Oracle 数据操作中经常遇见行变列的需求,即部分数据是按照行存储的, 但需求中需要将行以某一字段为轴变为单行列式展示 (“轴” 即是 本来显示在行上的列,转而显示在列的名称, 即需要行转列的字段) Oracle基础语法 (Pivot)select 字段1,字段2,字段3,字段4,字段5 frompiovt(Max(字段2)AS XX, Max(字段3)    -------...

2018-10-25 00:13:47 820

转载 KEEP()关键字使用

语法min | max(column1) keep (dense_rank first | last order by column2)over (partion by column3); 另外first last还可以结合avg  sum等使用。解释:返回按照column3分组后,按照column2排序的结果集中第一个或最后一个最小值或最大值column1。 实例:

2018-04-25 17:09:58 1509

转载 select ...for update 和insert all/first

Oracle中select ... for update的用法 语法:SELECT ... FOR UPDATE [OF column_list][WAIT n|NOWAIT][SKIP LOCKED];其中OF 子句用于指定即将更新的列,即锁定行上的特定列; WAIT 子句指定等待其他用户释放锁的秒数,防止无限期的等待。使用“FOR UPDATE WAIT

2018-04-11 15:25:49 425

转载 DBMS_RAMDOM 详解

DBMS_RAMDOM包中一共包含9个存储过程和函数,其中6个是现在用的,3个是已经过时的:当前版本11gR2  每次生成一个随机数oracle都会初始化一个种子,也可以调用seed过程自己初始化一个种子。  如果2次生成随机数的时候使用同一个种子,那么得到的结果也是一样的。即如果每次都初始化同一种子(大小写敏感),那结果每次生成都会相同 1.用整数初始化一

2018-03-20 17:50:25 277

转载 q-quote 转义限定符的用法

一句话概括 1.Oracle10g 之后可以使用q'限定符xxx'xxxx限定符' 方式代替转义符号功能2.限定可以是任一单字节符号,括号,字母数字都可以,但开始限定符必须与结束限定符一致,除了3中4中特例3.开始是4种特殊限定符[,{,<,(,那么结束界定符必须是],},>,)---解释如果使用]为开始限定符,那结束限定符也必须是]在Oracle中,字符串的字面量如果含有单引号,那么...

2018-03-20 17:46:57 363

原创 CONNECT BY(ROWNUM|LEVEL) 特殊用法解释(试着解释)

---2019/09/03 附加关于 CONNECT BY [PRIOR] 理解:不要在以PRIOR 是“指向箭头”记忆,是错误方法,因为分不清箭头如何指向Prior是优先的含义,即表示第一行先显示什么内容,即查询的方向如 CONNECT BY PRIOR ID_EMP= ID_MANAGER 即先显示ID_EMP的数据,再用ID_EMP 去关联下一级数据的ID_MANGER即...

2018-03-20 17:39:32 2942

原创 经常用到的透视函数(行转列&列转行)函数 PIVOT()&UNPIVOT

说明: 工作中经常遇到一组or一条数据按照不同类型被分成多条数据,如 一条合同的分期还款账单按照不同类型被分成本金,利息,管理费等,数据统计工作中,一条合同一期就会分成多条合同如实际工作中 常需要将同一期多条数据整合成一期并且账单条目类型横向显示,即数据透视过程:即实现可使用oracle自带函数 pivot() 数据透视函数;具体过程如下

2018-02-24 11:56:37 15449

转载 时间函数参数

-- Start所谓格式化日期指的是将日期转为字符串,或将字符串转为日期,下面几个函数可以用来格式化日期。[sql] view plain copyTO_CHAR(datetime, 'format')  TO_DATE(character, 'format')  TO_TIMESTAMP(character, 'form

2018-02-06 17:51:11 179

转载 数据库时间函数详解

一、时区相关概念(数据库)1、可能涉及的3个时区概念a.UTC时间,标准时区,其他地区的时区根据时间与UTC的差距,做偏移量,如New York晚于UTC 5小时,则为-5:00。  Oracle建议将数据库时区设置为UTCb.数据库时区,安装数据库的位置所在的时区,可通过函数DBTIMEZONE获取c.会话时区,用户所在的时区,可通过函数SESSIONTIMEZONE2、与日期和时区相关的数据类...

2018-02-06 17:35:22 1676 1

转载 Oracle select for update & for update of

CREATE TABLE "TEST6" ( "ID" VARCHAR2(30), "NAME" VARCHAR2(30), "AGE" NUMBER(2,0), "SEX" VARCHAR2(2), "ENAME" VARCHAR2(30), "ADDTIME" DATE)insert into TEST6 (id, name, age

2018-02-06 15:57:07 365

转载 Oracle SQL tuning 步骤

Oracle SQL tuning 步骤SQL是的全称是Structured Query Language(结构化查询语言)。SQL是一个在80年代中期被使用的工业标准数据库查询语言。不要把SQL语言与商业化产品如Microsoft SQL server或开源产品MySQL相混淆。所有的使用SQL缩略词的这些都是SQL标准的一部分。一、SQL tuning之前的调整  

2018-02-06 15:52:07 1004

转载 Returning 子句的使用 (附录 bulk collect)---20180206

——Part 1 在对数据表进行dml操作(Insert、Update和delete)的时候,有时会需要获取到进行操作的数据。最简单的方法就是在DML操作之前或者之后进行一下select操作,将数据获取到。此外,还可以使用一种更为简洁的方法,就是使用Oracle SQL的returning into子句。 Returning Into简介 在进行insert、updat

2018-02-06 15:47:44 708

转载 Oracle存储过程对象(package,procedure etc...) 调用权限 ----20180206

oracle DB下面有2种执行的权限:定义者权限(Definer)和调用者权限(Invoker)。AUTHID DEFINER (定义者权限):指编译存储对象的所有者。也是默认权限模式。  定义者权限的现象是,如果在APPS下创建的procedure,那其他user,只要能执行procedure,都是以apps的名义来执行的。因为APPS是procedure的定义者。APPS

2018-02-06 15:27:55 3109

原创 Oracle11R2 With as的递归算法

问题来源: PUZZLEUP 2017http://www.itpub.net/thread-2090903-1-1.html(出处: ITPUB论坛-中国最专业的IT技术社区)中#1LOTTERYIn a lottery, every week 5 different numbers are randomly drawn from numbers between

2018-01-30 12:55:04 1353

原创 oracle 11g 新特性应用--虚拟列&ora_hash() 在性能提升的作用(merge)

情景说明:数据仓库运行以每天或一固定频率同步刷新增量数据后,需要对增量数据插入全量数据的过程,当数据量达到超大数量级时,数据的更新操作的性能会严重不足, 产生这种情况的原因多是因为程序中直接使用。主要处理过程之一,每4个小时把新增的快递单数据merge到历史数据中---如果存在同样的订号,就把历史表的信息更新为新增的信息;---如果不存在同样的订号,就把新增的信息插入历史表;

2018-01-20 14:55:56 2506

转载 Oracle使用技巧2则--sequence and Hint

1、 Sequenceoracle的程序中,序号sequence不是随处都可以使用的select test.sequence.nextval,mgr,sum(sal) from emp group by mgr ORA-02287: 此处不允许序号 果然,在外面再包一层就可以了SQL> select test_sequ

2017-01-26 15:11:31 423

原创 Linux cmd常用命令& 实例

Linux 工作常用cmd总结

2017-01-26 14:44:23 3738

原创 Oracle函数 --聚合函数中的语法within group

Oracle的聚合函数一般与group by 联合使用,但一般通过group by 聚合但某些聚合函数会后跟WITHIN GROUP (ORDER BY expr [ DESC | ASC ] [ NULLS { FIRST | LAST } ] [, expr [ DESC | ASC ] [ NULLS { FIRST |

2017-01-10 16:08:03 14792 1

转载 Oracle总结 -- Oracle Trigger 触发器

REFERENCING OLD AS OLD NEW AS NEW FOR EACH Row CREATE OR REPLACE TRIGGER TRI_DELETE_INFO AFTER DELETE ON T_INFO_2012 REFERENCING OLD AS OLD NEW AS NEW FOR EACH ROW DECLARE V_

2016-11-25 17:10:57 458

原创 工作总结的 -- Oracle merge into 报错& Linux使用

1. Merge into 问题程序中merge into: 报ORA-30926: 无法在源表中获得一组稳定的行原因分析:有一数据数源同一时间传输了两条数据,造成merge into update时不确定从那一条更新从而报错。故障解决: 使用 row_number() over() 语句,根据row_num排序确定最后一条记录,避免重复代码参考

2016-11-02 17:08:18 989

原创 Oracle的时间总结 -- oracle知识2016/09/30

1. Interval 时间INTERVAL YEAR TO MONTH数据类型 Oracle语法: INTERVAL 'integer [- integer]' {YEAR | MONTH} [(precision)][TO {YEAR | MONTH}] 该数据类型常用来表示一个时间段,而非其他日期格式表示一个准确的时间,如: 与sysdate做算法时是以天

2016-09-30 17:41:37 1298

转载 窗口函数--配合over(...)的选项 rows/range between ... preceding and ... following--工作备忘2016/9/30

说明:在使用over()函数进行统计(尤其是求和,求平均的等)的时候,有时候需要设定一个范围(时间,数值等),因此,oracle提供了窗口函数选项rows/rang between ... preceding and ... following 分析函数的语法结构一般是:分析函数名(参数) OVER (PARTITION BY子句 ORDER BY子句 ROWS/RANGE子句

2016-09-30 17:19:26 16837

原创 oralce代理用户登录--工作备忘2016/03/09

1、问题描述: 当修改以他用的的view定义时,发现权限不足, 又不可以用对应用户的账号登录      解决方式: 使用oralce的代理登录功能, 使用当前用户和密码代理登录其他用户,用户名格式: 当前用户[代理用户]      优势: 在不知道其他用户密码和权限的情况下,修改其他用户的文件或对象使用前赋权ALTER USER 被代理用户 GRANT CONNECT THROUG

2016-03-18 16:56:35 369

原创 Oracle特殊字段处理--工作备忘2016/03/09

1、处理long类型字段的函数: to_lob(field) referenec: http://blog.itpub.net/4227/viewspace-69066/TO_LOB函数是一个很特殊的函数,特殊之处在于,这个函数可以处理LONG类型数据,而且这个函数和LONG类型一样,拥有很多的限制。不过,这些还不是很特殊的地方,下面简单看一下TO_LOB这个函数。

2016-03-09 17:54:25 931

原创 工作阶段 --工作备忘2016/02/18

项目进行过程中的三个阶段CUTOVER: 是指项目完成UAT后需要将现有平台转移到新平台的阶段。 若不存在现有平台的话则仅指上线前的最后准备阶段。GOLIVE: 是项目LAUNCH的那个时间点, 广义上也可指项目正式上线的那一段时间。Hypercare: 是指合同内GOLIVE之后的一段时间, 这段时间原则上是必须保留所有项目资源直至Hypercare阶段结束。

2016-02-19 11:31:35 3429

原创 with read only ---工作备忘2016/02/15

1、With Read Only 选项有些需求不需要用户通过视图修改数据,则可以创建只读视图。创建只读视图应该使用read only选项,其基本语法形式如下所示。create or replace view 视图名称as 查询语句  with read only其中,with read only选项表示该视图将被创建为只读视图。“WITH READ ON

2016-02-19 11:31:20 912

转载 数据仓库三种事实表(fact_table) --工作备忘2016/02/14

在数据仓库领域有一个概念叫Transaction fact table,中文一般翻译为“事务事实表”。事务事实表是维度建模的数据仓库中三种基本类型事实表中的一种,另外两种分别是周期快照事实表和累积快照事实表。        事务事实表与周期快照事实表、累积快照事实表使用相同的一致性维度,但是它们在描述业务事实方面是有着非常大的差异的。        事务事实表记录的事务层面的事

2016-02-15 09:04:28 6164

原创 层级查询高级用法, 执行计划hash group by--工作备忘2016/02/02

1、

2016-02-04 17:36:06 2831

原创 时间算法--工作备忘2016/1/27

1、sysdate 时间加减法Oracle中时间中的加减法都是有 以天单位,如 select sysdate +/- 1 from dual 都是前一天后一天如果需要加减其他时间单位 可以1/ 对应单位时间如 时 1/24, 分 1/24*60 , 秒  1/24*60*60 。2、 用系统时间sysdate限定反判断生失效时间是否取值SELECT *FRO

2016-01-27 17:34:46 271

Magento中文手册

megento中文手册,详细讲解magento各个模块,适用开发者了解Magento

2013-10-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除