博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  18开发DBA-Oracle开发特殊SQL

摘要:with tmp as(select 'A' AS USERNAME,to_date('2017.10','yyyy.mm') month,45 num from dual union allselect 'A' AS USERNAME,to_date('2017.11','yyyy.mm') mo 阅读全文

posted @ 2020-01-15 17:44 徐正柱- 阅读(2925) 评论(0) 推荐(0) 编辑

摘要:1.生成部门维度表 SELECT FN_Get_SubtrDeptStrs(DEPT_KEY_PATH, DEPT_LEVELS) DEPT_KEY, FN_Get_SubtrDeptStrs(DEPT_NAME_PATH, DEPT_LEVELS) DEPT_NAME, DEPT_LEVELS D 阅读全文

posted @ 2015-08-14 17:17 徐正柱- 阅读(628) 评论(0) 推荐(0) 编辑

摘要:oracle group by中rollup和cube的区别: Oracle的GROUP BY语句除了最基本的语法外,还支持ROLLUP和CUBE语句。 如果是ROLLUP(A, B, C)的话,先会对(A、B、C)进行GROUP BY,然后对(A、B)进行GROUP BY,然后是(A)进行... 阅读全文

posted @ 2015-05-06 10:47 徐正柱- 阅读(622) 评论(0) 推荐(0) 编辑

摘要:管道函数:用于返回一个集合,通常函数只返回一个值.create or replace package PKG_USER_ORG_EXTEND_HELPER is type tp_map is record( objId varchar2(50), va... 阅读全文

posted @ 2015-01-16 10:31 徐正柱- 阅读(343) 评论(0) 推荐(0) 编辑

摘要:一些schema的常用脚本############################################################ getcode.sql --获得某个存储过程、包、函数代码脚本set feedback offset heading offset termout offset linesize 1000set trimspool onset verify offspool &1..sqlprompt set define offselect decode( type||'-'||to_char(line,'fm99999' 阅读全文

posted @ 2013-05-30 14:13 徐正柱- 阅读(641) 评论(0) 推荐(0) 编辑

摘要:一、将一条记录复制成多条相同记录select codefrom(select '001,002,003,004,005,' as code from dual)connect by level<=5;二、实现将一串字符转换成行记录select regexp_substr(code,'[^,]+',1,level) code,levelfrom(select '001,002,003,004,005,' as code from dual)connect by level<=5结果:code level001 1002 2003 300 阅读全文

posted @ 2012-07-27 16:38 徐正柱- 阅读(335) 评论(0) 推荐(0) 编辑

摘要:第一部分、SQL&PL/SQL[Q]怎么样查询特殊字符,如通配符%与_[A]select * from table where name like 'A\_%' escape '\'[Q]如何插入单引号到数据库表中[A]可以用ASCII码处理,其它特殊字符如&也一样,如insert into t v... 阅读全文

posted @ 2008-04-26 18:57 徐正柱- 阅读(543) 评论(0) 推荐(0) 编辑

摘要:1.使用With 子句重用子查询用于在sql多次使用相同的子查询时:示例一、显示部门工资总和高于雇员工资总和三分之一的部门名及工资总和(两次相同子句) SQL> select dname,sum(sal) as dept_total from emp,dept where emp.deptno=dept.deptno group by dname having sum(sal)>(select sum(sal) *1/3 from emp,deptwhere emp.empno=dept.empno);示例二、显示部门工资总和高于雇员工资总和三分之一的部门名及工资总和(使用with 阅读全文

posted @ 2007-07-09 11:46 徐正柱- 阅读(796) 评论(0) 推荐(0) 编辑

摘要:<一>.单自定义类型的应用1.创建一个数据类型create type t_air as object(id int ,name varchar(20));2.建表create table aaa(id int ,person t_air);3.入数据insert into aaa values(1,t_air(1,'23sdf'));4.询classPlaceselect a.id ,a.persion.id,a.person.name from aaa a;<二>.多维数组declare type rec_name is record(lastname 阅读全文

posted @ 2007-07-06 10:32 徐正柱- 阅读(806) 评论(0) 推荐(0) 编辑

摘要:1.用游标取数据然后处理(Bulk collect 用法)CREATE OR REPLACE TYPEA AS OBJECT (id NUMBER(9),name VARCHAR2 (20))CREATE OR REPLACE TYPE atypelist AS TABLE OF A;/*定义type类型 A.DECLARE TYPE cur_type IS REF CURSOR; TYPE tab_type IS TABLE OF A; c_find_data cur_type; v_tab tab_type;BEGIN OPEN c_find_data FOR 'SELECT... 阅读全文

posted @ 2007-07-03 10:04 徐正柱- 阅读(643) 评论(0) 推荐(0) 编辑

摘要:1.树的使用(connect by) 用例说明: ABZFLID0001 是 ID ABZFLID0002 是ID的上一级,父ID 1.1 从父节点开始,查询树的所有层级节点数据 SELECT SYS_CONNECT_BY_PATH (ABZFLID0001, '/') PATHS, ABZFLID 阅读全文

posted @ 2007-06-28 09:53 徐正柱- 阅读(1437) 评论(0) 推荐(0) 编辑

摘要:1.查询记录相同的其中一笔记录SELECT mat12id, mat12name , bat22id,PRICEFROM (SELECT mat12id, mat12name , bat22id,PRICE, ROW_NUMBER() OVER (PARTITION BY mat12id ORDER BY bat22id DESC) RN FROM bat22)WHERE RN = 12.查询从多少行到多少行的记录SELECT * FROM (SELECT A.*,rownum rFROM(SELECT * FROM TableName )AWHER... 阅读全文

posted @ 2007-06-22 11:24 徐正柱- 阅读(971) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示