12 2013 档案

摘要:SQL语句: SELECT /*+parallel(t1 16)*/ T1.DATA_DATE, T1.ACCT_NO, T1.ACCT_ORD, T1.ACCT_NO_PK, T1.ACCT_BAL, T1.D_CMP_BAL, T1.M_CMP_BAL, T1.... 阅读全文
posted @ 2013-12-31 10:02 czcb 阅读(530) 评论(0) 推荐(0) 编辑
摘要:SQL> select * from fxqd_list_20131115_new where (acct_no, oper_no, seqno, trans_amt) not in (select acct_no, oper_no, seqno, trans_amt ... 阅读全文
posted @ 2013-12-31 08:50 czcb 阅读(338) 评论(0) 推荐(0) 编辑
摘要:SQL> explain plan for select * from fxqd_list_20131115_new where (acct_no, oper_no, seqno, trans_amt) not in (select acct_no, oper_no, seqno, t... 阅读全文
posted @ 2013-12-31 08:40 czcb 阅读(216) 评论(0) 推荐(0) 编辑
摘要:WITH AS: 就是将一个子查询部分独立出来,有时候是为了提高SQL语句的可读性,有时候是为了提高SQL语句性能。 如果一个SQL语句中,某个表会被访问多次,而且每次访问的限制条件一样的话,就可以使用with as来提高性能。 注意:如果 with as 短语没... 阅读全文
posted @ 2013-12-30 22:18 czcb 阅读(200) 评论(0) 推荐(0) 编辑
摘要:INSERT INTO F_PTY_INDIV (PTY_ID, PTY_NAME, GENDER_CD, BIRTHDAY, CERT_TYPE, CERT_NO, SOCINSUR_NO, COUNTRY_CD, NATION, POLITICS_CD, ... 阅读全文
posted @ 2013-12-30 20:53 czcb 阅读(281) 评论(0) 推荐(0) 编辑
摘要:在11g中,全表扫描可能使用direct path read方式,绕过buffer cache,这样的全表扫描就是物理读了。 在10g中,都是通过gc buffer来读的,所以不存在direct path read的问题。 direct path read较高的可能原因有: 1. 大量的磁盘排... 阅读全文
posted @ 2013-12-28 08:45 czcb 阅读(2095) 评论(0) 推荐(0) 编辑
摘要:SQL> select * from a1; ID NAME---------- ---------- 1 a 2 aSQL> select * from a2; ID NAME---------- ---------- 1 a 3 aSQL> select * from a1 where ... 阅读全文
posted @ 2013-12-27 22:19 czcb 阅读(239) 评论(0) 推荐(0) 编辑
摘要:常用的统计信息收集脚本:非分区表:BEGIN DBMS_STATS.GATHER_TABLE_STATS(ownname => 'SCOTT', tabname => 'DEPT', estimate_percent => 30, method_opt => 'for all columns si... 阅读全文
posted @ 2013-12-27 19:19 czcb 阅读(747) 评论(0) 推荐(0) 编辑
摘要:explain plan for select *from (SELECT 20131223 AS DATA_DATE, NVL(T1.ACCT_NO, T2.ACCT_NO) AS ACCT_NO, NVL(T1.ACCT_ORD, T2... 阅读全文
posted @ 2013-12-27 11:33 czcb 阅读(296) 评论(0) 推荐(0) 编辑
摘要:SQL> create table a1(id int,name char(10));Table created.SQL> create table a2(id int,name char(10));Table created.SQL> insert into a1 values(1,'a');1 ... 阅读全文
posted @ 2013-12-26 11:09 czcb 阅读(207) 评论(0) 推荐(0) 编辑
摘要:declare cursor c_update is select b.acct_skid, a.acct_id from opt_acct_fdim a, opt_acct_fdim_bkp b where a.acct_id = b.acct_id; v_counte... 阅读全文
posted @ 2013-12-25 20:56 czcb 阅读(199) 评论(0) 推荐(0) 编辑
摘要:可以看到连接到数据库的机器名为perass:PROCESS 1234表示是JDBC的进程查询SQL:select username, machine, status, prev_sql_addr, prev_hash_value, prev_sql_id, process, count(*) fro... 阅读全文
posted @ 2013-12-25 16:42 czcb 阅读(256) 评论(0) 推荐(0) 编辑
摘要:SQL> SELECT * FROM dba_directories ;OWN DIRECTORY_NAME DIRECTORY_PATH------- ---------------------- ---------------SYS DPUMPDIR ... 阅读全文
posted @ 2013-12-25 15:16 czcb 阅读(5485) 评论(0) 推荐(0) 编辑
摘要:SQL> select * from v$mystat where rownum select count(*), USERNAME from v$session group by username; COUNT(*) USERNAME---------- --------------------... 阅读全文
posted @ 2013-12-25 13:52 czcb 阅读(250) 评论(0) 推荐(0) 编辑
摘要:SQL> select * from v$mystat where rownum create index acct_dtl_af_idx4 on T_PM_ACCT_DTL_AF (acct_flag,data_date,acct_no_pk,cur_code) ; 2 ;SQL> select ... 阅读全文
posted @ 2013-12-25 13:04 czcb 阅读(288) 评论(0) 推荐(0) 编辑
摘要:SQL> select * from v$mystat where rownum select sid, SQL_ADDRESS,SQL_HASH_VALUE,SQL_ID from v$session where si 2 ; SID SQL_ADDR SQL_HASH_VALUE SQL_ID-... 阅读全文
posted @ 2013-12-25 12:40 czcb 阅读(400) 评论(0) 推荐(0) 编辑
摘要:SQL> create table a1(id int,name varchar2(10));Table created.SQL> create table a2(id int,name varchar2(10));Table created.SQL> insert into a1 values(1... 阅读全文
posted @ 2013-12-25 09:46 czcb 阅读(265) 评论(0) 推荐(0) 编辑
摘要:SQL> set serveroutput on SQL> declare name varchar2(10);begin select ename into name from emp where empno = &no; dbms_output.put_line(name);EXCEPTION ... 阅读全文
posted @ 2013-12-24 20:51 czcb 阅读(139) 评论(0) 推荐(0) 编辑
摘要:1.create or replace procedure test_prc(p_data_dt in date) IS e_name emp.ename%type; begin select ename into e_name from emp where hiredate =p_data_dt;... 阅读全文
posted @ 2013-12-24 17:31 czcb 阅读(304) 评论(0) 推荐(0) 编辑
摘要:explain plan for select a.* from fxqd_list_20131115_new_100 a where (acct_no, oper_no, seqno, trans_amt) not in (select acct_no, oper_no, se... 阅读全文
posted @ 2013-12-24 11:29 czcb 阅读(287) 评论(0) 推荐(0) 编辑
摘要:begin for iin1 ..1000000loop executeimmediate'insert into p1 values(' || i || ',' || i ||')'; commit; endloop;end;可以看到动态使用拼接的是使用的常值begin for iin1 ..10... 阅读全文
posted @ 2013-12-24 09:58 czcb 阅读(256) 评论(0) 推荐(0) 编辑
摘要:DECLARE V_COUNTER NUMBER; begin V_COUNTER := 0; for i in 1 .. 1000022 loop insert into p1 values(i, 'a' || i); V_COUNTER := V_COUNTER + 1; IF... 阅读全文
posted @ 2013-12-23 16:08 czcb 阅读(292) 评论(0) 推荐(0) 编辑
摘要:SQL> set serveroutput onSQL> DECLARE CURSOR cur IS SELECT DATA_DATE, ACCT_NO , ACCT_ORD , ACCT_NO_PK , CARD_CODE , CUST_NO , BANK_CORP_COD... 阅读全文
posted @ 2013-12-23 11:45 czcb 阅读(267) 评论(0) 推荐(0) 编辑
摘要:select name,total,round(total-free,2) used, round(free,2) free,round((total-free)/total*100,2) pctused from(select 'SGA' name,(select sum(value/1024/1... 阅读全文
posted @ 2013-12-23 10:59 czcb 阅读(1750) 评论(0) 推荐(0) 编辑
摘要:select rowid from T_PM_DEPOSIT_HIS partition(DEPOSIT_HIS_20120104) ;SQL> set linesize 200SQL> set pagesize 200SQL> set autot trace----该条数据取自partition(... 阅读全文
posted @ 2013-12-23 08:49 czcb 阅读(209) 评论(0) 推荐(0) 编辑
摘要:开窗函数Oracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是:对于每个组返回多行,而聚合函数对于每个组只返回一行SQL> create table a1(id int,flag1 char(10),flag2 char(10));Table crea... 阅读全文
posted @ 2013-12-22 16:39 czcb 阅读(635) 评论(0) 推荐(0) 编辑
摘要:SQL> create sequence seq1minvalue 1maxvalue 999999999999999999999999999start with 0increment by 1cache 20; 2 3 4 5 6 create sequence seq1*ERROR at lin... 阅读全文
posted @ 2013-12-22 15:45 czcb 阅读(261) 评论(0) 推荐(0) 编辑
摘要:INDEX FULL SCAN 索引全扫描。单块读 。它扫描的结果是有序的,因为索引是有序的。它通常发生在 下面几种情况(注意:即使SQL满足以下情况 不一定会走索引全扫描) ... 阅读全文
posted @ 2013-12-21 19:06 czcb 阅读(306) 评论(0) 推荐(0) 编辑
摘要:INDEX FULL SCAN 索引全扫描。单块读 。它扫描的结果是有序的,因为索引是有序的。它通常发生在 下面几种情况(注意:即使SQL满足以下情况 不一定会走索引全扫描) ... 阅读全文
posted @ 2013-12-21 18:41 czcb 阅读(282) 评论(0) 推荐(0) 编辑
摘要:一.构造相关表P1,P2create table p1(id int,name char(10));create table p2(id int,name char(10));二.批量插入数据begin for i in 1 .. 100000 loop insert into p1 values(... 阅读全文
posted @ 2013-12-20 22:06 czcb 阅读(344) 评论(0) 推荐(0) 编辑
摘要:-----对于普通表实现: UPDATE T_PM_DEPOSIT_HIS b SET flag = SUBSTR( flag, 1, 8 )||'4'|| CASE WHEN term =20130101DECLARE CURSOR c... 阅读全文
posted @ 2013-12-20 13:02 czcb 阅读(410) 评论(0) 推荐(0) 编辑
摘要:游标是用来处理使用SELECT语句从数据库中检索到的多行记录的工具。借助游标的功能,数据库应用程序可以对一组记录逐个进行处理,每次处理一行。游标是从数据表中提取出来的数据,以临时表的形式存放在内存中--普通游标,游标本身就是一个变量一个游标(cursor)可以被看作指向结果集(a set of ro... 阅读全文
posted @ 2013-12-19 22:42 czcb 阅读(224) 评论(0) 推荐(0) 编辑
摘要:ipcrm用法 ipcrm -M shmkey 移除用shmkey创建的共享内存段ipcrm -m shmid 移除用shmid标识的共享内存段ipcrm -Q msgkey 移除用msqkey创建的消息队列ipcrm -q msqid 移除用msqid标识的消息队列ipcrm -S semkey ... 阅读全文
posted @ 2013-12-19 14:00 czcb 阅读(259) 评论(0) 推荐(0) 编辑
摘要:Join Operations? SORT-MERGE JOIN– Sorts tables on the join key and then merges them together– Sorts ar... 阅读全文
posted @ 2013-12-19 12:06 czcb 阅读(256) 评论(0) 推荐(0) 编辑
摘要:实验:源数据库:10.5.129.160 dwhtest需要导入的数据库:10.5.129.130 dwhtest在10.5.129.130上创建DBLINKSQL> create public database link DBL_DWHTEST connect to dwf identified ... 阅读全文
posted @ 2013-12-18 10:16 czcb 阅读(614) 评论(0) 推荐(0) 编辑
摘要:drop table T_PM_ACCT_DTL_AF_TEST;create table T_PM_ACCT_DTL_AF_TEST ( DATA_DATE date, ACCT_NO VARCHAR2(100), ACCT_ORD VARCHAR2(30), ACCT_NO_PK VAR... 阅读全文
posted @ 2013-12-17 20:14 czcb 阅读(258) 评论(0) 推荐(0) 编辑
摘要:分区转换步骤1.检查源表是否能重定义:SQL>exec dbms_redefinition.can_redef_table('DWF','F_AGT_BUSINESS_CONTRACT_H');PL/SQL procedure successfully completed.注意:在线重定义,必须要... 阅读全文
posted @ 2013-12-17 20:01 czcb 阅读(399) 评论(0) 推荐(0) 编辑
摘要:一:创建分区表create table T_PM_ACCT_DTL_AF_TEST( DATA_DATE NUMBER(8), ACCT_NO VARCHAR2(100), ACCT_ORD VARCHAR2(30), ACCT_NO_PK VAR... 阅读全文
posted @ 2013-12-16 17:08 czcb 阅读(610) 评论(0) 推荐(0) 编辑
摘要:IN-list iterator (IN-list迭代)字段有索引,in里有多少个值就执行多少次索引扫描。不管值是否在字段里存在~SQL> create table t1 as select * from dba_objects;表已创建。SQL> create index idx_object_i... 阅读全文
posted @ 2013-12-12 21:29 czcb 阅读(763) 评论(0) 推荐(0) 编辑
摘要:索引范围扫描当谓语中包含将会返回一定范围数据的条件时就会选用索引范围扫描。索引可以是唯一或者不唯一的, 因为是由该条件来确定是否返回多个数据行的。INDEX RANGE SCAN 索引范围扫描。单块读 发生在对unique index/primary key 进行范围查找, ... 阅读全文
posted @ 2013-12-11 20:11 czcb 阅读(414) 评论(0) 推荐(0) 编辑
摘要:drop table emp1;drop table dept1;create table emp1 as select * from emp;create table dept1 as select * from dept;SQL> select e.empno, e.deptno from em... 阅读全文
posted @ 2013-12-11 10:35 czcb 阅读(133) 评论(0) 推荐(0) 编辑
摘要:背景是在一台11gR2的机器上,开发反映一个批处理比以前慢了3倍。经过仔细查看该SQL的执行计划,发现由于SQL中使用了or,导致CBO走出了一个非常糟糕的CONCATENATION路径。no_expand提示的说明是 The NO_EXPAND hint prevents the cost-bas... 阅读全文
posted @ 2013-12-10 19:49 czcb 阅读(244) 评论(0) 推荐(0) 编辑
摘要:LOCALITY:表明分区索引是LOCAL的还是GLOBAL的。--创建分区索引:create index IDX_MGR_BASE_MGR on T_PM_MGR_BASE (MGR_CODE) LOCAL parallel 16 nologging ;SQL> select * from T_P... 阅读全文
posted @ 2013-12-10 12:55 czcb 阅读(2370) 评论(0) 推荐(0) 编辑
摘要:我举个 global 索引的例子查询 条件 不走 分区键这个值但是 我走另外一个where条件而且选择性很高假设索引高度为3不跨越分区 扫描3个block +1个 data block跨越分区 扫描 1000个 分区 *3 +1个data block扫描要跨越 多个 分区你就建立 global 条件... 阅读全文
posted @ 2013-12-10 08:56 czcb 阅读(741) 评论(0) 推荐(0) 编辑
摘要:表可以按range、hash、list分区,表分区后,其上的索引和普通表上的索引有所不同,oracle对于分区表上的索引分为2类,即局部索引和全局索引,下面分别对这2种索引的特点和局限性做个总结。局部索引local index1. 局部索引一定是分区索引,分区键等同于表的分区键,分区数等同于表的分... 阅读全文
posted @ 2013-12-09 21:42 czcb 阅读(2303) 评论(0) 推荐(0) 编辑
摘要:CREATE TABLE T_CONCAT (ID NUMBER, NAME VARCHAR2(30), TYPE VARCHAR2(30));INSERT INTO T_CONCAT SELECT ROWNUM, OBJECT_NAME, OBJECT_TYPE FR... 阅读全文
posted @ 2013-12-08 18:22 czcb 阅读(297) 评论(0) 推荐(0) 编辑
摘要:SQL> select distinct employee_id,first_name from test1;107 rows selected.Execution Plan----------------------------------------------------------Plan ... 阅读全文
posted @ 2013-12-07 21:02 czcb 阅读(915) 评论(0) 推荐(0) 编辑
摘要:标量子查询优化 当使用另外一个SELECT 语句来产生结果中的一列的值的时候,这个查询必须只能返回一行一列的值。这种类型的子查询被称为标量子查询在某些情况下可以进行优化以减少标量子查询的重复执行,但更糟糕的场景是每一行都需要标量子查询的执行。explain plan for SELECT B.EMP... 阅读全文
posted @ 2013-12-06 09:55 czcb 阅读(1251) 评论(0) 推荐(0) 编辑
摘要:explain plan for UPDATE DWF.F_PTY_INDIV O SET END_DT = TO_DATE('2012-12-31', 'YYYY-MM-DD') WHERE EXISTS (SELECT 1 FROM DWF.F_PTY_INDIV F ... 阅读全文
posted @ 2013-12-05 16:45 czcb 阅读(118) 评论(0) 推荐(0) 编辑
摘要:SQL> select a.unit3_code 机构编码, 2 a.unit3_name 机构名称, 3 a.dept1_code 部门编码, 4 a.dept1_name 部门名称, 5 a.mgr_code 客户经理编... 阅读全文
posted @ 2013-12-05 14:13 czcb 阅读(1078) 评论(0) 推荐(0) 编辑
摘要:Libraey Cache Data Accesslibrary cache是关于SQL语句的SGA中的一系列的链表,library cache是通过访问一系列的hash buckets,实现使用hash table,每个特定的hash值,链接到SQL语句链接到SQL语句挂载hash buckets... 阅读全文
posted @ 2013-12-05 09:58 czcb 阅读(121) 评论(0) 推荐(0) 编辑
摘要:SQL_ID cqsz37256v36j, child number 1-------------------------------------INSERT /*+append*/ INTO TMP_ACCT_AF NOLOGGING ( DATA_DATE , ACCT_NO , ACCT_O... 阅读全文
posted @ 2013-12-04 17:29 czcb 阅读(261) 评论(0) 推荐(0) 编辑
摘要:早上某数据库服务器CPU不断报警,应用系统管理员同时反馈应用响应明显变慢。登陆数据库主机查看, 应用连接上来的几个进程占用了大量的CPU资源,造成CPU空闲率很低。登陆数据库查询,发现有不少buffer cache chains的等待, 初步判断是应用上出现了某些性能糟糕的SQL语句。 通... 阅读全文
posted @ 2013-12-04 17:11 czcb 阅读(329) 评论(0) 推荐(0) 编辑
摘要:SELECT * FROM (SELECT pubformdat0_.id id332_, pubformdat0_.domain_id domain2_332_, pubformdat0... 阅读全文
posted @ 2013-12-04 16:24 czcb 阅读(462) 评论(0) 推荐(0) 编辑
摘要:SQL> explain plan for select * from OPS$CZTEST1.SAVJ_ATOMJOURBAK where ((list_flag = '1' and prt_flag = '0') and acct_no not in (select a... 阅读全文
posted @ 2013-12-04 15:07 czcb 阅读(579) 评论(0) 推荐(0) 编辑