二:开窗函数
开窗函数指定了分析函数工作的数据窗口大小,这个数据窗口大小可能会随着行的变化而变化,举例如下:
1:
over(order by salary) 按照salary排序进行累计,order by是个默认的开窗函数
over(partition by deptno)按照部门分区
2:
over(order by salary range between 5 preceding and 5 following)
每行对应的数据窗口是之前行幅度值不超过5,之后行幅度值不超过5
--触发器
1.oracle 11g以前,不能确定同一个表上的触发器顺序,现在可以使用follows trrigger_name来指定上一个触发器是哪一个
2.行级触发器不能读或写所作用的基表,语句级触发器可以自由地读和写基表。
如果触发器中使用自治事务,并在触发器中提交事务,则可以查询基表的内容,但不能对基表修改操作。
3.替代触发器只能用在需要修改数据的复杂视图上。替代触发器必须指定 for each row
4.触发器有自己单独的名称空间,可以与子程序或表重名,其他则共用一个名称空间
授权系统触发器权限
grant administer database trigger to dump_test;
查看用户权限
select privilege from dba_sys_privs where grantee = 'scott'
union
select privilege from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee='scott');
面向对象 类、类型
create type type_map as object
(
TID NUMBER,
TNAME VARCHAR2(32),
tcomm NUMBER,
TSAL NUMBER,
map member function con return real
)
not final;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/12961536/viewspace-769578/ ,如需转载,请注明出处,否则将追究法律责任。