sql
文章平均质量分 66
handawei_5
这个作者很懒,什么都没留下…
展开
-
查询优化
一、SQL语句优化:1: exists 快于in2: 数据量小时连接查询快于子查询,数据量大时子查询快于连接查询3: select (*) 快于 select count(col)4: 连接查询快于from多个表查询如果查询结果来源于多个表中则用连接查询,如果最后结果来源于一个中则推荐用子查询二、in可以分为三类: 1、形如select * from t1 where f1 in ...2010-04-08 10:14:31 · 75 阅读 · 0 评论 -
窗口函数
为计算一定的范围的累积和移动平均值,可以结合聚合函数使用:sum() avg() max() min() count() variance() stddev() first_value() last_value()结合使用。select t.prd_type_id,t.amount,t.month,sum(t.amount) over(order by t.prd_typ...原创 2010-11-16 21:32:32 · 78 阅读 · 0 评论 -
报表函数
报表函数:总计:select 1,t.month,t.prd_type_id,t.emp_id,t.amount/*,sum(t.amount) */,sum(t.amount) over (partition by t.month) as prdValue,sum(t.amount) over (partition by t.prd_type_id) as ...原创 2010-11-17 22:06:05 · 152 阅读 · 0 评论 -
表修改
使用 字符串中使用’Insert into productsValues(12,1,’o’’Malley’,null,null); Insertintocustomers(customer_id,first_name,last_name)Select 10,first)name,last_nameFrom custormers Where customer_id=1...原创 2010-11-17 23:12:52 · 87 阅读 · 0 评论 -
导入导出,创建databaselink
pl/sql导出表结构和表数据 导出表结构:Tools-->Export User Objects -->选择要导出的表(包括Sequence等)-->.sql文件 导出表数据:Tools-->Export Tables-->选择表,选择SQL Inserts-->.sql文件 执行这些.sql文件时,要使用新建Command ...原创 2011-08-10 15:56:25 · 267 阅读 · 0 评论 -
数据库优化
转:http://www.iteye.com/topic/1118860 数据库优化的讨论可以说是一个永恒的主题。资深的Oracle优化人员通常会要求提出性能问题的人对数据库做一个statspack,贴出数据库配置等等。 还有的人认为要抓出执行最慢的语句来进行优化。但实际情况是,提出疑问的人很可能根本不懂执行计划,更不要说statspack了。而我认为,数据库优 化,应该首先从大的方面...原创 2011-12-19 14:17:11 · 79 阅读 · 0 评论 -
oracle解锁
查看锁表进程SQL语句1: select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, lo.locked_mode from v$locked_object lo, dba_objects ao, v$session sess...原创 2012-06-19 17:04:52 · 62 阅读 · 0 评论 -
Merge用法:Oracle 10g中对Merge语句的增强
Merge用法:Oracle 10g中对Merge语句的增强 在Oracle 10g之前,merge语句支持匹配更新和不匹配插入2种简单的用法,在10g中Oracle对merge语句做了增强,增加了条件选项和DELETE操作。下面我通过一个demo来简单介绍一下10g中merge的增强和10g前merge的用法。 参考Oracle ...原创 2012-02-17 16:05:38 · 115 阅读 · 0 评论 -
Oracle集合操作函数:Union、Intersect、Minus
集合操作不适用于LOB,Varray和潜逃表列Union、intersect、minus操作符不适用于long列如果选择列表中包含有表达式或者函数,那么必须为表达式或函数定义列别名1、Uinon:无重并集,并以第一列的结果进行升序排序2、Uinon all:有重并集,不对结果集排序3、Intersect:交集,以第一列的结果进行升序排列4、Minus:差集,以第一列的结...原创 2012-02-17 16:19:07 · 211 阅读 · 0 评论 -
orace评级函数
cume_dist():功能描述:计算一行在组中的相对位置,返回大于0 小于等于1的数,例如在一个4行组中,分布是1/4 ,2/4 ,3/4 ,4/4如果有重复的就乘以重复的个数,如第一行和第二行重复 分布为 (1/4)*2,(1/4)*2, 3/4 ,4/4下面是例子:表 all_salesselect * from all_sales twhere t.yea...原创 2010-11-15 22:35:59 · 85 阅读 · 0 评论 -
orace评级函数
rank() over (order by XX): /*********** 这个sql可以看出 rank其实就是拿当前的一列和别的行相同的列进行排列 */ select t.amount ,rank() over (order by t.amount desc) as rank from all_sales t where t.year=20...原创 2010-11-14 23:43:27 · 92 阅读 · 0 评论 -
orcel sql 技巧
转载:http://www.iteye.com/topic/8058151. SELECT子句中避免使用 “*” 当你想在SELECT子句中列出所有的COLUMN时,使用动态SQL列引用 ‘*’ 是一个方便的方法.不幸的是,这是一个非常低效的方法. 实际上,ORACLE在解析的过程中, 会将“*” 依次转换成所有的列名, 这个工作是通过查询数据字典完成的, 这意味着将耗费更多的时间. ...原创 2010-11-14 23:05:05 · 334 阅读 · 0 评论 -
rank over pation
排列(rank())函数。这些排列函数提供了定义一个集合(使用 PARTITION 子句),然后根据某种排序方式对这个集合内的元素进行排列的能力,下面以scott用户的emp表为例来说明rank over partition如何使用 1)查询员工薪水并连续求和select deptno,ename,sal,sum(sal)over(order by ename) sum1, /*...原创 2010-08-11 11:11:44 · 107 阅读 · 0 评论 -
Oracle语句优化53个规则详解(转载)
Oracle语句优化53个规则详解(转载) Oracle语句优化53个规则详解 1. 选用适合的ORACLE优化器 ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,C...原创 2010-12-15 11:41:06 · 118 阅读 · 0 评论 -
group
select t.startstncode ,sum(t.price100)from mp_sales tgroup by t.startstncodeselect t.startstncode,t.tickettype,sum(t.price100)from mp_sales tgroup by t.startstncode ,t.tickettyp...原创 2010-05-30 16:50:02 · 77 阅读 · 0 评论 -
ORACLE 中IN和EXISTS比较
EXISTS的执行流程 select * from t1 where exists ( select null from t2 where y = x ) 可以理解为: for x in ( select * from t1 ) loop if ( exists ( select null from t2 where y = x.x ) then ...原创 2010-08-23 09:49:26 · 79 阅读 · 0 评论 -
sql优化设定
select /*+RULE*/ m.daterunid as aterunid from mda_run m 开启自己优化。原创 2010-09-02 10:41:07 · 62 阅读 · 0 评论 -
dba常用sql
1. 查看表空间的名称及大小 select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size from dba_tablespaces t, dba_data_files d where t.tablespace_name = d.tablespace_name group by t.tablespace_name; ...原创 2010-12-16 17:19:08 · 85 阅读 · 0 评论 -
oracle
今天没事来说说oracle性能优化的技巧。。1.选用适合的ORACLE优化器 ORACLE的优化器共有3种: 1.RULE(基于规则) 2.COST(基于成本) 3.CHOOSE(选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . 你当...原创 2010-10-11 10:17:04 · 72 阅读 · 0 评论 -
oracle改错
系统运行了一段时间报错:java.sql.SQLException: ORA-01000: 超出打开游标的最大数查看数据库当前的游标数配置slqplus:show parameter open_cursors;查看游标使用情况:select o.sid, osuser, machine, count(*) num_cursfrom v$open_cursor o, v$sessio...原创 2011-02-09 12:19:31 · 116 阅读 · 0 评论 -
关于Union 中 ORA-12704:字符集不匹配问题的解决 .
zhuan:http://blog.csdn.net/lqh4188/article/details/7498354在使用Union all连接时,若A集合中某列为nvarchar2或nvarchar类型,而B集合中无此列,用‘ ’ 来代替是会报字符集不匹配,解决方法有两种,见下面的示例例: [sql] view plaincopyprint?select '...原创 2012-11-05 18:23:16 · 610 阅读 · 0 评论