- 浏览: 809037 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (413)
- 项目 (12)
- 统计分析 (3)
- java (7)
- jquery (15)
- oracle (33)
- 面试题 (8)
- 排序算法 (3)
- 蛇形矩阵算法 (3)
- 字符串 (1)
- ICU分析插件 (1)
- html5 (1)
- Ubuntu (4)
- Linux (4)
- memcache (2)
- myeclipse (3)
- hadoop (18)
- hbase (14)
- hive (7)
- zookeeper (2)
- pig (0)
- mysql (11)
- Redis (8)
- MongoDB (7)
- Cassandra (0)
- Neo4j (0)
- springMVC (3)
- ibatis (1)
- mahout (0)
- Highcharts (1)
- maven (7)
- 生活随笔 (6)
- 存储过程 (4)
- mybatis (3)
- bootstrap (19)
- 工作中遇到的问题 (23)
- node.js (3)
- web前段 (6)
- AngularJS (5)
- GIT (2)
- nginx (5)
- hive,sqoop (1)
- 高并发 (2)
- 算法 (3)
- 工具类 (2)
- ckeditor (1)
- java代码自动生成 (3)
- ueditor (6)
- svn (4)
- easyui (3)
- 数据挖掘 (4)
- ligerUi (1)
- fullcalendar (1)
- 微信公众号开发 (1)
- tomcat (2)
- 面试 (7)
- 数据库性能优化 (2)
- R语言 (3)
- R (6)
- ylcf (39)
- CentOS (13)
- docker (28)
- Spring Boot (10)
- Nexus (1)
- thymeleaf (2)
- nodejs (2)
- swagger (1)
- Jenkins (1)
- SpringCloud (9)
- vue (1)
- springClould问题汇总 (3)
- layui (1)
最新评论
-
greatwqs:
在前置请求页面返回token, 在提交接口中验证token, ...
Spring MVC 用拦截器+token防止重复提交 -
zhukewen_java:
这种方法的缺陷在于如果请求了两个save=true的方法,后面 ...
Spring MVC 用拦截器+token防止重复提交 -
byrgl5:
请问如果重复提交了三次呢?能避免吗?
Spring MVC 用拦截器+token防止重复提交 -
381895649:
是不是有病?
服务器被如下ip攻击,如何根据ip超找攻击来源 -
greatwqs:
最棒的10款MySQL管理工具
排列(rank())函数。这些排列函数提供了定义一个集合(使用 PARTITION 子句),然后根据某种排序方式对这个集合内的元素进行排列的能力,下面以scott用户的emp表为例来说明rank over partition如何使用 1)查询员工薪水并连续求和 select deptno,ename,sal, sum(sal)over(order by ename) sum1, /*表示连续求和*/ sum(sal)over() sum2, /*相当于求和sum(sal)*/ 100* round(sal/sum(sal)over(),4) "bal%" from emp 结果如下: DEPTNO ENAME SAL SUM1 SUM2 bal% ---------- ---------- ---------- ---------- ---------- ---------- 20 ADAMS 1100 1100 29025 3.79 30 ALLEN 1600 2700 29025 5.51 30 BLAKE 2850 5550 29025 9.82 10 CLARK 2450 8000 29025 8.44 20 FORD 3000 11000 29025 10.34 30 JAMES 950 11950 29025 3.27 20 JONES 2975 14925 29025 10.25 10 KING 5000 19925 29025 17.23 30 MARTIN 1250 21175 29025 4.31 10 MILLER 1300 22475 29025 4.48 20 SCOTT 3000 25475 29025 10.34 DEPTNO ENAME SAL SUM1 SUM2 bal% ---------- ---------- ---------- ---------- ---------- ---------- 20 SMITH 800 26275 29025 2.76 30 TURNER 1500 27775 29025 5.17 30 WARD 1250 29025 29025 4.31 2)如下: select deptno,ename,sal, sum(sal)over(partition by deptno order by ename) sum1,/*表示按部门号分氏,按姓名排序并连续求和*/ sum(sal)over(partition by deptno) sum2,/*表示部门分区,求和*/ sum(sal)over(partition by deptno order by sal) sum3,/*按部门分区,按薪水排序并连续求和*/ 100* round(sal/sum(sal)over(),4) "bal%" from emp 结果如下: DEPTNO ENAME SAL SUM1 SUM2 SUM3 bal% ---------- ---------- ---------- ---------- ---------- ---------- ---------- 10 CLARK 2450 2450 8750 3750 8.44 10 KING 5000 7450 8750 8750 17.23 10 MILLER 1300 8750 8750 1300 4.48 20 ADAMS 1100 1100 10875 1900 3.79 20 FORD 3000 4100 10875 10875 10.34 20 JONES 2975 7075 10875 4875 10.25 20 SCOTT 3000 10075 10875 10875 10.34 20 SMITH 800 10875 10875 800 2.76 30 ALLEN 1600 1600 9400 6550 5.51 30 BLAKE 2850 4450 9400 9400 9.82 30 JAMES 950 5400 9400 950 3.27 DEPTNO ENAME SAL SUM1 SUM2 SUM3 bal% ---------- ---------- ---------- ---------- ---------- ---------- ---------- 30 MARTIN 1250 6650 9400 3450 4.31 30 TURNER 1500 8150 9400 4950 5.17 30 WARD 1250 9400 9400 3450 4.31 3)如下: select empno,deptno,sal, sum(sal)over(partition by deptno) "deptSum",/*按部门分区,并求和*/ rank()over(partition by deptno order by sal desc nulls last) rank, /*按部门分区,按薪水排序并计算序号*/ dense_rank()over(partition by deptno order by sal desc nulls last) d_rank, row_number()over(partition by deptno order by sal desc nulls last) row_rank from emp 注: rank()涵数主要用于排序,并给出序号 dense_rank():功能同rank()一样,区别在于,rank()对于排序并的数据给予相同序号,接下来的数据序号直接跳跃,dense_rank()则不是,
比如数据:1,2,2,4,5,6.。。。。这是rank()的形式 1,2,2,3,4,5,。。。。这是dense_rank()的形式 1,2,3,4,5,6.。。。。。这是row_number()涵数形式 row_number()涵数则是按照顺序依次使用,相当于我们普通查询里的rownum值 其实从上面三个例子当中,不难看出over(partition by ... order by ...)的整体概念,我理解是 partition by :按照指字的字段分区,如果没有则针对全体数据 order by :按照指定字段进行连续操作(如求和(sum),排序(rank()等),如果没有指定,就相当于对指定分区集合内的数据进行整体sum操作
发表评论
-
oracle jdbc链接SID和Service Name的区别
2018-12-24 09:27 1707application-dev.yml配置文件如下 eur ... -
Oracle批量操作
2018-04-24 15:52 491racle批量插入: Xml代码 & ... -
mybatis 需要注意的点 MyBatis 插入空值时,需要指定JdbcType (201
2018-03-07 10:19 1633Oracle数据库mybatis 插入空值时报错(with ... -
Oracle JDBC driver Maven配置
2018-03-05 13:41 1327问题: maven项目,spri ... -
ibatis结合Oracle的iterate insert批量插入
2018-02-27 13:50 1593ibatis批量插入oracle数据库 <inser ... -
数据库分页大全(oracle利用解析函数row_number高效分页)
2018-02-24 17:26 720最近在转换mysql项目到oracle项目,遇到mysql分 ... -
Mybatis结合Oracle的foreach insert批量插入
2018-02-24 14:17 3463最近在做将mysql数据库项目迁移到oracle数据库项目 ... -
oracle聚合函数汇总
2018-02-24 13:02 1664今天在做项目,讲mysql项目转换为oracle项目的时候, ... -
spring集中druid进行数据库监控
2018-02-11 17:52 1895Druid内置提供了一个StatViewServlet用于 ... -
mysql和oracle数据互相迁移
2018-02-11 15:53 847工作中,项目原本是mysql数据库 后台需要换成oracl ... -
[Navicat] 连接Oracle报错_Cannot load OCI DLL 87
2018-02-11 15:43 1942Navicat可以用来连接各 ... -
oracle批处理开启或者关闭服务
2013-12-16 22:53 1018机子上装着Oracle,但并不是很常要用到,所以把原先 ... -
oracle 正则表达式用法
2011-08-05 09:30 1731l 方括号表达示 方括号表达式 ... -
oracle case when 用法总结
2011-08-04 14:27 2974Oracle dbms_job package 用法小结 O ... -
Oracle语句优化30个规则详解
2011-08-04 11:07 2875select tab_name from tables ... -
oracle decode()函数用法总结
2011-08-04 10:06 2998·含义解释: decode(条件 ... -
Oracle中的Union,Union All,Intersect,Minus
2011-08-04 09:09 1165众所周知的几个结果 ... -
oracle partition by与group by 的区别
2011-08-03 10:49 10608SELECT b, c, d,SUM(d) O ... -
oracle executeimmediate用法小解
2011-08-03 09:16 1306EXECUTE IMMEDIATE 代替了以 ... -
oracle merge的用法
2011-08-02 17:53 1116MERGE语句是Oracle9i新增的语法,用来合并UPDAT ...
相关推荐
Oracle 自定义聚合函数-分析函数 Oracle 自定义聚合函数是一种强大且灵活的功能,允许用户根据自己的需求创建自定义的聚合函数。聚合函数是一种特殊的函数,它可以对一组数据进行处理和计算,并返回一个结果。 ...
Oracle 函数大全是对 Oracle 数据库中各种函数的总结和分类,包括分析函数、聚合函数、转换函数、日期型函数、字符型函数、数值型函数和其他函数等。 一、分析函数 Oracle 分析函数是 Oracle 数据库中的一种强大...
Oracle 聚合函数及其扩展使用 Oracle 聚合函数是指在 Oracle 数据库中对数据进行...Oracle 聚合函数及其扩展使用可以帮助开发人员和数据库管理员更好地对数据进行统计、分析和计算,从而获取有价值的信息和 insights。
Oracle分析函数是数据库管理系统Oracle中一组强大的工具,用于处理集合数据,特别是在复杂的报表和数据分析场景中。它们允许用户在单个SQL查询中执行聚合操作,同时保持行的原始顺序,这是传统的GROUP BY函数无法...
其中,Oracle的分析函数是其强大的特性之一,它允许用户在单个SQL查询中执行复杂的分析操作,而无需使用子查询或者自连接。这篇文档将深入探讨Oracle中的分析函数,帮助你更好地理解和利用这一功能。 一、什么是...
ORACLE分析函数 ORACLE分析函数是数据库管理系统中的一种功能强大且灵活的分析工具,能够对数据进行复杂的分析和处理。通过使用分析函数,开发者可以更加方便地实现业务逻辑,提高查询效率和数据处理速度。 在本...
oracle函数介绍 3 著名函数之聚合函数 pdf oracle函数介绍 4 非著名函数之聚合函数 pdf oracle函数介绍 5 分析函数简述 pdf oracle函数介绍 6 著名函数之分析函数 pdf oracle函数介绍 7 非著名函数之分析函数 ...
Oracle 分析函数中提供了多种聚合函数,包括: 3.1 AVG 函数 AVG 函数用于计算表达式的平均值。 3.2 CORR 函数 CORR 函数用于计算两个表达式之间的互相关性。 3.3 COUNT 函数 COUNT 函数用于计算表达式的计数...
Oracle分析函数是Oracle数据库提供的用于数据分析的一组SQL扩展,它们能够对一组数据执行计算,并返回一组结果,这组结果通常会有一个多行的集合。与聚合函数不同,分析函数不会把多行聚合成单一结果,而是在原有...
Oracle数据库中的日期函数、字符函数和聚合函数是数据库操作中常用的功能,对于数据处理和查询至关重要。以下将详细解释这些函数的用法和示例。 日期函数主要用于处理和操作日期数据,以下是一些主要的Oracle日期...
Oracle 分析函数(用法+实例) Oracle 分析函数是 Oracle 8.1.6 版本中引入的高级应用,属于 Oracle 的一大亮点。分析函数可以分为四大类:排名函数、聚合函数、行比较函数和统计函数。下面将对分析函数的原理、...
### Oracle分析函数详解 #### 一、概述 Oracle分析函数是一种强大的工具,它允许用户对分组数据执行复杂的计算,并且能够返回多个结果行。这与传统的聚合函数(如`SUM`、`COUNT`等)形成鲜明对比,后者通常只针对...
在理解Oracle分析函数之前,首先需要了解它与传统的聚合函数(如SUM、AVG等)之间的区别: - **聚合函数**:对一组数据计算一个单一的结果,例如求和、平均值等。 - **分析函数**:可以为每个分组内的每一行数据...
在Oracle数据库中,分析函数和聚合函数是SQL查询中用于处理和汇总数据的重要工具。本文将详细介绍两者的主要功能和用法。 首先,我们关注的是排名函数。在Oracle中,有三种常用的排名函数: 1. `RANK()`: 这个函数...
"oracle函数介绍(6) 著名函数之分析函数.doc","oracle函数介绍(7) 非著名函数之分析函数.doc"以及"oracle分析函数.doc"深入介绍了这些高级函数,帮助理解如何利用它们进行复杂的数据分析。 最后,"oracle函数介绍...
Oracle 分析函数是一种强大的SQL工具,它允许你在处理数据时执行复杂的分析操作,而不像聚合函数那样仅仅返回单行结果。分析函数在Oracle 8.1.6版本中被引入,自那时起,它们已经成为数据库查询和报表生成的重要组成...