oracle——分析函数OVER ()
分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是
对于每个组返回多行,而聚合函数对于每个组只返回一行。
SQL> select t.empno,t.ename,sum(t.sal)
2 from emp t;
select t.empno,t.ename,sum(t.sal)
*
ERROR at line 1:
ORA-00937: not a single-group group function
SQL> select t.empno,t.ename,sum(t.sal) over() sum from emp t;
EMPNO ENAME SUM
---------- ---------- ----------
7369 SMITH 31025
7499 ALLEN 31025
7521 WARD 31025
7566 JONES 31025
7654 MARTIN 31025
7698 BLAKE 31025
7782 CLARK 31025
7788 SCOTT 31025
7839 KING 31025
7844 TURNER 31025
7876 ADAMS 31025
7900 JAMES 31025
7902 FORD 31025
7934 MILLER 31025
14 rows selected.
over()、over(order by...)与over(partition by...)之间的区别
over(order by...)用在聚合函数(max(),sun()....)后面,可返回根据排序结果进行统计到当前行的聚合值(即“连续”统计);
分析:第二行的sum=第一行里的sal+第二行里的sal;
第二行的sum=第一行里的sal+第二行里的sal+第三行里的sal;
1 select t.empno,
2 t.deptno,
3 t.ename,
4 t.sal,
5 sum(t.sal) over(order by t.ename) sum
6* from emp t
SQL> /
EMPNO DEPTNO ENAME SAL SUM
---------- ---------- ---------- ---------- ----------
7876 20 ADAMS 1100 1100
7499 30 ALLEN 1600 2700
7698 30 BLAKE 2850 5550
7782 10 CLARK 2450 8000
7902 20 FORD 3000 11000
7900 30 JAMES 950 11950
7566 20 JONES 2975 14925
7839 10 KING 5000 19925
7654 30 MARTIN
相关文档:
Oracle中Kill session的研究
作者:eygle |English Version 【转载时请以超链接形式标明文章出处和作者信息及本声明】
链接:http://www.eygle.com/archives/2004/06/kill_session.html
我们知道,在Oracle数据库中,可以通过kill session的方式来终止一个进程,其基本语法结构为:
alter system kill session 'sid,serial# ......
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;
2、查看表空间物理文件的名称及大小
select tablespace_name, file_id, file_name,
round(byte ......
1个实例
create table tjob2(tt date);
创建一个存储过程
create or replace procedure t26 is
begin
insert into tjob2 values(sysdate);
commit;
end t26;
创建job,每分钟执行一次
SQL> declare
2 tjob number;
3 begin
4 sys.dbms_jo ......
1)Library Cache的命中率:
.计算公式:Library Cache Hit Ratio = sum(pinhits) / sum(pins)
SQL>SELECT SUM(pinhits)/sum(pins) from V$LIBRARYCACHE;
通常在98%以上,否则,需要要考虑加大共享池,绑定变量,修改cursor_sharing等参数。
2)计算共享池内存使用率:
SQL>SELECT ......