易截截图软件、单文件、免安装、纯绿色、仅160KB

oracle分析函数row_number() over()使用

row_number() OVER (PARTITION BY COL1 ORDER BY COL2) 表示根据COL1分组,在分组内部根据 COL2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的).
  与rownum的区别在于:使用rownum进行排序的时候是先对结果集加入伪列rownum然后再进行排序,而此函数在包含排序从句后是先排序再计算行号码.
  row_number()和rownum差不多,功能更强一点(可以在各个分组内从1开时排序).
  rank()是跳跃排序,有两个第二名时接下来就是第四名(同样是在各个分组内).
  dense_rank()l是连续排序,有两个第二名时仍然跟着第三名。相比之下row_number是没有重复值的 .
  lag(arg1,arg2,arg3):
arg1是从其他行返回的表达式
arg2是希望检索的当前行分区的偏移量。是一个正的偏移量,时一个往回检索以前的行的数目。
arg3是在arg2表示的数目超出了分组的范围时返回的值。
看几个SQL语句:
语句一:
select row_number() over(order by sale/cnt desc) as sort, sale/cnt
from (
select -60 as sale,3 as cnt from dual union
select 24 as sale,6 as cnt from dual union
select 50 as sale,5 as cnt from dual union
select -20 as sale,2 as cnt from dual union
select 40 as sale,8 as cnt from dual);
执行结果:
          SORT       SALE/CNT
---------- ----------
             1             10
             2              5
             3              4
             4            -10
             5            -20
语句二:查询员工


相关文档:

MOSS2007的BDC连接ORACLE数据库

作为数据集成的MOSS组件BDC,在MOSS2007版本中还有很多不成熟的地方,虽然可以存取其他数据库中的数据,但配置确实很复杂,缺省的工具也很弱,这是在一个项目中用到的连接ORACLE数据库配置文件,纪录在次以便后用。
<?xml version="1.0"?>
<LobSystem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xm ......

oracle 安装之后


一、参数设置
--1、设置A:
db_block_size = 8192
db_domain = ''
db_file_multiblock_read_count = 16
db_name = bidata
db_recovery_file_dest = /export/home/app/oracle/oracle/product/10.2.0/db_1/flash_recovery_area
db_recovery_file_dest_size = 10737418240
dispatchers = '(PROTOCOL=TCP) (SERVICE=b ......

SQL Server里的 ISNULL 与 Oracle 中的 NULLIF

SQL Server里的 ISNULL 与 Oracle 中的 NULLIF不同:
  SQL Server 中有两个参数,语法:
    ISNULL(check_expression, replacement_value)
    check_expression 与 replacement_value 数据类型必须一致
   
如果 check_expression 为 NULL,则返回 replacement_v ......

Java开发Oracle数据库的ORA 01000错误解析

很多朋友在Java开发中,使用Oracle数据库的时候,经常会碰到有ORA-01000: maximum open cursors exceeded.的错误。
实际上,这个错误的原因,主要还是代码问题引起的。
ora-01000: maximum open cursors exceeded.
表示已经达到一个进程打开的最大游标数。
这样的错误很容易出现在Java代码中的主要原因是:Java代码在执 ......

oracle 定时 作业 例子

sql > variable jobno  number ;
sql > begin
sql > DBMS_JOB.submit(:jobno, ' pro_name(); ' ,sysdate, ' sysdate+1 ' ); 
 dbms_job.submit(:job1, ' MYPROC; ' ,sysdate, ' sysdate+1/1440 ' );   -- 每天1440分钟,即一分钟运行test过程一次
sql > commit ;
sql > end ; ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号