- 浏览: 85862 次
文章分类
最新评论
1、排名函数
排名的几个分析函数 row_number rank dense_rank
语法:row_number() over(order by column)
重复的数据,不并列 比如 30,30,40 排名为3,4,5
语法:rank () over (order by b)
重复的数据,并列,占用下个排名 比如 30,30,40 排名 3,3,5
语法:dense_rank()over(order by cnt) d
重发的数据,并列,不占用下个排名 比如30,30,40 排名 3,3,4
注意:排名分析函数里的order by子句是必须的;partition by 和 order by后均可跟多列;只在没有partition by 的情况下, rownum才能做到和row_number同样的事情
select dept_id, sale_date, goods_type, sale_cnt, row_number()over(partition by
dept_id order by sale_cnt desc) rn, rank()over(partition by dept_id order by sale_cnt
desc) rk, dense_rank()over( order by sale_cnt,dept_id desc) drk
from lw_sales where trunc(sale_date,'MM')=date'2013-04-01'
2、相邻函数
相邻类分析函数 lag和lead
LAG 是取到排序后当前记录之前的记录
LEAD 是取到排序后当前记录之后的记录
select deptno, ename
, lag(ename,1,'AAA')over(partition by deptno order by ename) lower_name
, lead(ename,1,'ZZZ')over(partition by deptno order by ename) higher_name
from emp;
和相邻行比较
3、统计函数
相关统计分析函数 sum、avg、 max/min、first_value/last_value
按部门按月累加统计:
with t as (select dept_id, to_char(sale_date,'YYYY-MM') sale_month, sum(sale_cnt)
month_sale_cnt from lw_sales group by dept_id, to_char(sale_date,'YYYY-MM'))
select dept_id ,sum(month_sale_cnt) over (partition by dept_id order by sale_month) total from t
平均统计avg
最大最小max、min
排名的几个分析函数 row_number rank dense_rank
语法:row_number() over(order by column)
重复的数据,不并列 比如 30,30,40 排名为3,4,5
语法:rank () over (order by b)
重复的数据,并列,占用下个排名 比如 30,30,40 排名 3,3,5
语法:dense_rank()over(order by cnt) d
重发的数据,并列,不占用下个排名 比如30,30,40 排名 3,3,4
注意:排名分析函数里的order by子句是必须的;partition by 和 order by后均可跟多列;只在没有partition by 的情况下, rownum才能做到和row_number同样的事情
select dept_id, sale_date, goods_type, sale_cnt, row_number()over(partition by
dept_id order by sale_cnt desc) rn, rank()over(partition by dept_id order by sale_cnt
desc) rk, dense_rank()over( order by sale_cnt,dept_id desc) drk
from lw_sales where trunc(sale_date,'MM')=date'2013-04-01'
2、相邻函数
相邻类分析函数 lag和lead
LAG 是取到排序后当前记录之前的记录
LEAD 是取到排序后当前记录之后的记录
select deptno, ename
, lag(ename,1,'AAA')over(partition by deptno order by ename) lower_name
, lead(ename,1,'ZZZ')over(partition by deptno order by ename) higher_name
from emp;
和相邻行比较
3、统计函数
相关统计分析函数 sum、avg、 max/min、first_value/last_value
按部门按月累加统计:
with t as (select dept_id, to_char(sale_date,'YYYY-MM') sale_month, sum(sale_cnt)
month_sale_cnt from lw_sales group by dept_id, to_char(sale_date,'YYYY-MM'))
select dept_id ,sum(month_sale_cnt) over (partition by dept_id order by sale_month) total from t
平均统计avg
最大最小max、min
发表评论
-
17、nosql -- redis(一)简介
2015-04-01 11:09 441数据库发展史 --> 无库时代--> 层次状数据库 ... -
16、ER设计工具--powerdesigner
2015-03-30 14:09 1385entity-relationShip 1. 概念数据模型 ... -
15、pl/sql高级应用
2015-03-30 11:40 463now is null now is null now is ... -
13、oracle--sql 数字/日期/字符串/过滤函数
2015-03-30 00:08 1026常用的数据类型:数字(number|float)、日期(d ... -
12、oracle--查询/连接/层次查询
2015-03-28 08:49 409实例;http://www.1keydata.com/cn/s ... -
11、oracle--pl/sql
2015-03-28 00:16 517JDBC, 全称为Java DataBase Con ... -
11、深入学习Oracle
2015-03-22 14:24 0Oracle是个高并发的软件; -
11、oracle用户/权限管理
2015-03-14 21:25 0create user c##2015 identified ... -
10、oracle的卸载与安装
2015-03-15 20:10 655安装了oracle发现编码不对,想找/Home0注册表也没找到 ... -
9、实现行列转换
2015-03-15 20:10 366行转列: 1、通过Oracle数据库自带的wm_c ... -
8、concat(str1,str2)连接多个数据
2015-03-15 20:10 505ex ; select concat(region_na ... -
7、union并/intersect交
2015-03-15 20:10 455union 跟 jion 有些许类似,因为这两个指令都可 ... -
6、查询消除重复数据distinct
2015-03-15 20:09 553ex: select distinct name,id fr ... -
5、外联查询
2015-03-14 10:33 5921、左联 left join a.name = b.name ... -
4、truncate清空表保留表结构
2015-03-14 10:08 836ex: truncate table test 这是个d ... -
3、简单的crud语句
2015-03-14 10:00 3021、update ex: update repeat ... -
2、in的用法
2015-03-14 09:59 446select t.* from repeat t where ... -
###.什么是持久化?
2015-03-11 13:08 0<转>http://cuisuqiang.it ... -
lll数据异常
2015-03-04 17:06 0Duplicate column name 'cat_id' ... -
lll.mysql建表设置utf-8
2015-03-04 16:15 0CREATE TABLE message( id int(10 ...
相关推荐
oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm --补充包/文件,是为了运行sql*plus的即时客户端; oracle-instantclient11.2-odbc-11.2.0.4.0-1.x86_64.rpm --补充包/文件,为运行ODBC环境附加库; ...
oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm --补充包/文件,是为了运行sql*plus 的即时客户端; oracle-instantclient11.2-odbc-11.2.0.4.0-1.x86_64.rpm --补充包/文件,为运行ODBC环境附加库; ...
oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm --补充包/文件,是为了运行sql*plus的即时客户端; oracle-instantclient11.2-odbc-11.2.0.4.0-1.x86_64.rpm --补充包/文件,为运行ODBC环境附加库; ...
This book is the definitive reference on PL/SQL, considered throughout the database community to be the best Oracle programming book available. Like its predecessors, this fifth edition of Oracle PL/...
oracle数据库创建脚本 #!/bin/sh OLD_UMASK=`umask` umask 0027 mkdir -p /oradata .../u01/app/oracle/product/11.2.0/dbhome_1/bin/sqlplus /nolog @/u01/app/oracle/admin/tdrb/scripts/tdrb.sql
Oracle-Pl-Sql 部分的ppt课件,可以作为plsql入门使用。
oraclesql判断值为空-Oracle-sqlserver的空值(null)判断.pdf
sudo dpkg -i oracle-instantclient12.1-basic_12.1.0.2.0-2_amd64.deb #安装 sudo sh -c "echo /usr/lib/oracle/12.2/client64/lib > /etc/ld.so.conf.d/oracle-instantclient.conf" sudo ldconfig export LD_...
Oracle-PL-SQL入门教程(经典)
Oracle-Pl-Sql 内部培训课件,一份讲解oracle中的pl/sql的课件。
Oracle---PL-SQL经典练习题.docx
Oracle---PL-SQL经典练习题1.doc
3. 用相应 SQL Server 函数替代 Oracle 函数。 4. 检查所有的比较运算符。 5. 用“+”字符串串联运算符代替“||”字符串串联运算符。 6. 用 Transact-SQL 程序代替 PL/SQL 程序。 7. 把所有 PL/SQL 游标改为非游标 ...
Oracle---PL-SQL经典练习题1.docx
oracle-mysql-sqlservice jar驱动
oracle12c程序连接时异常: ORA-01017: 用户名/口令无效; 登录被拒绝 的解决方案。
JDBC连接Oracle-MySQL-SQLServer数据库,有详尽介绍,本人都进行过测试,可以运行
oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm,