SQL/PLSQL
文章平均质量分 74
lcfgaoyong
这个作者很懒,什么都没留下…
展开
-
不想用Rank 和Partition by取一组数据中最大项的行
经常会遇到取一组数据分组后最大(小)值的行,以前常用Rank 和Partition by,我想了下换个方法其实还可以,没有测试性能如何. create table test(col1 number,col2 varchar2(20),col3 number);insert into test select 1,content,2 from dual;inser原创 2009-02-09 14:55:00 · 1027 阅读 · 1 评论 -
做COUPON交叉校验的SQL,整理了下
--A 手工添加校验--准备(本次活动的)数据 A1,A2,A3--准备与之有时间和城市交叉的数据 B1,B2,B3--第一步 /*create table coupon_cross_tmp(ACTIVITY_CODE number,ITEM_CODE varchar2(8),store_code原创 2009-02-06 15:12:00 · 598 阅读 · 0 评论 -
带排序的层次化查询
做AppendingFee时,每张单子会产生一张对冲单,对冲金额与原单相反.主查询需要是按原单-原单排序,如果有对冲单的话 是原单-对冲单/原单的排序.一开始用start with 和connect by nocycle/prior+伪列 level都没有好的办法解决. 想了个办法 呵呵,自己搞定了,主要就是用两个case搞定create table test(原创 2009-02-06 15:37:00 · 387 阅读 · 0 评论 -
30个Oracle语句优化规则详解
1.选用适合的oracle优化器oracle的优化器共有3种:a.RULE(基于规则)b.COST(基于成本)c.CHOOSE(选择性)设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE、COST、CHOOSE、ALL_ROWS、FIRST_ROWS。你当然也在SQL句级或是会话(session)级对其进行覆盖。为了使用转载 2009-02-11 18:35:00 · 365 阅读 · 0 评论 -
使用正规表达式编写更好的SQL
Oracle Database 10g 的一个新特性大大提高了您搜索和处理字符数据的能力。这个特性就是正规表达式,是一种用来描述文本模式的表示方法。很久以来它已在许多编程语言和大量 UNIX 实用工具中出现过了。 Oracle 的正规表达式的实施是以各种 SQL 函数和一个 WHERE 子句操作符的形式出现的。如果您不熟悉正规表达式,那么这篇文章可以让您了解一下这种新的极其强大转载 2009-02-16 16:17:00 · 396 阅读 · 0 评论 -
Implementing and Using the PL/SQL Profiler
在公司内部有时候会给其它的同事进行一些内部的培训,这里大部分的同事都在用PL/SQL写程序,因此关于PL/SQL程序的性能调整是很多人关心的话题。对于一大段PL/SQL程序,如何快速找到这段程序里面最耗费时间的部分在哪里?如何快速地定位改程序的bottleneck?这时候需要dbms_profiler包。1. 首先需要检查dbms_profiler包有没有安装。如果没有则需要通过sys转载 2009-02-25 12:55:00 · 596 阅读 · 0 评论 -
oracle split函数
oracle split函数 效率还可以,比以前的做法要高点 CREATE OR REPLACE TYPE str_split IS TABLE OF VARCHAR2 (4000);CREATE OR REPLACE FUNCTION String_split (p_str IN VARCHAR2, p_delimiter IN VARCHAR2) RETURN str转载 2009-03-18 15:38:00 · 798 阅读 · 0 评论 -
关于In和Exists性能网上找的对比资料
原则:IN适合于外表大而内表小的情况;EXISTS适合于外表小而内表大的情况in 与 exist 的语法比较: select × from 数据表 t where t.x in (...) 括号内可以是符合t.x字段类型的值集合,如(1,2,3),但如果t.x是number类型的时候,似乎这样的写法会出问题;也可以是通过另外的select语句查询出来转载 2009-03-20 11:55:00 · 634 阅读 · 0 评论 -
TomKyte的字符串列转行
Rows to StringTom Kytes STRAGGThis tutorial shows how to collect values from multiple rows into asingle, comma delimited string. This is also known as "stringaggregation".It takes values转载 2009-07-05 20:46:00 · 653 阅读 · 0 评论