- 浏览: 100333 次
- 性别:
- 来自: 无锡
文章分类
最新评论
//根据object_id分组,每组中,取survey_id最大,按survey_id排序为desc。 //取survey_id最小,按survey_id排序为asc //rank() 或者 row_number() select * from (select rank() over(partition by a.object_id order by a.survey_id desc ) rn,a.* from (select * from T_Icm_Clm_Mt_Survey) a) where rn = 1
去掉rn = 1的条件
就是根据排序,然后通过rn = 1来获得所需的最大值,最小值
OVER(PARTITION BY)函数介绍 over(order by salary) 按照salary排序进行累计,order by是个默认的开窗函数 over(partition by deptno)按照部门分区 over(partition by deptno order by salary) 2:开窗的窗口范围: over(order by salary range between 5 preceding and 5 following): 窗口范围为当前行数据幅度减5加5后的范围内的。 over(order by salary rows between 5 preceding and 5 following): 窗口范围为当前行前后各移动5行。 与over函数结合的几个函数介绍 row_number()over()、rank()over()和dense_rank()over()函数的使用 1.在求第一名成绩的时候,不能用row_number(),因为如果同班有两个并列第一, row_number()只返回一个结果; 2.rank()和dense_rank()可以将所有的都查找出来: 如上可以看到采用rank可以将并列第一名的都查找出来; rank()和dense_rank()区别: --rank()是跳跃排序,有两个第二名时接下来就是第四名; --dense_rank()l是连续排序,有两个第二名时仍然跟着第三名
详细请看博文 http://www.cnblogs.com/lanzi/archive/2010/10/26/1861338.html
发表评论
-
LISTAGG
2019-01-09 15:52 0select LISTAGG(i.coverage_name, ... -
sql改变字段类型
2018-08-22 18:08 1463https://blog.csdn.net/cai709557 ... -
Mybatis #{}和${} 区别
2018-07-25 13:16 424一般${}用在我们能够确定值的地方,也就是我们程序员自己赋值的 ... -
ORA-04063解决方法
2018-02-05 18:02 1656select * from dba_objects where ... -
Oracle不等号与Null的关系, 查询结果不包含null
2017-11-08 17:25 887遇到查询问题, 写SQL当where status =! 'Y ... -
SQL查询表中重复数据
2017-10-30 12:01 717SQL查询重复数据 有例 ... -
Mysql修改重置密码
2017-09-19 09:47 614http://blog.csdn.net/Jiang_Rong ... -
什么是BOM头
2017-03-17 14:42 635类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编 ... -
Oracle trunc()函数的用法
2017-01-09 18:16 402--Oracle trunc()函数的用法 /******* ... -
select 1 from dual中 1 的含义
2017-01-09 16:47 741//select 1 from table; //selec ... -
oracle NVL()函数 空值转换
2016-11-03 12:13 459一NVL函数是一个空值转换函数 NVL(表达式1,表达式 ... -
提示ORA-00904: "字段名": 标识符无效
2016-11-01 15:41 644提示ORA-00904: "表名" &qu ... -
sql筛选一条记录同时满足一个字段不等于10另一个不等于20
2016-10-28 16:05 926select * from t_user where not ... -
cmd下sqlplus登陆常用命令(转)
2016-10-11 14:57 584sqlplus + 数据库名字+@。 ... -
oracle update时间格式值
2016-09-26 18:04 876目的:需要将时间更改为 9/13/2016 9:00:00 A ... -
转义字符 & ' ora 01756 引号内字符串没有正确结束(字符串中包含')
2016-09-15 14:42 9771:' oracle中update的时候,字符串中为'it's ... -
decode函数,decode(sign)
2016-09-07 11:41 508//decode(字段或字段的运算,值1,值2,值3) ... -
PLSQL用spool导出CSV数据command
2016-08-19 09:47 2643set pages 5000 set lines 2000 ... -
Oracle SQL 两列合并为一列,并且可以自定义添加一些字符
2016-08-17 14:13 1030//表t_clm_case下claim_no列,与表t_clm ... -
SQL语句替代变量&
2016-04-11 11:14 1199在SQL*Plus中默认的"&"表 ...
相关推荐
- 在长时间运行的任务中,可以开启跟踪记录每一步执行情况。 - 跟踪日志有助于分析性能瓶颈等问题。 ##### 4.12 回归测试 - 自动化执行一组预定义的测试用例来验证软件的稳定性。 - 可以设置定时任务定期执行回归...
- 定义一组固定的查询条件作为模板。 - 便于日后快速调用。 #### 七、命令窗口 **7.1 输入SQL语句和命令** - 在命令窗口中可以直接输入SQL语句或命令。 **7.2 开发命令文件** - 将常用的命令组合起来保存为文件。...
即当一个对数据库的查询操作返回一组结果集时,用游标来标注这组结果集,以后通过对游标的操作来获取结果集中的数据信息。这里特别提出游标的概念,是因为它在PL/SQL的编程中非常的重要。定义游标的语法结构如下: ...
- 分组统计`emp`表中的数据,按照`eno`分组,并计算每组内的最大值、最小值、计数、总和及平均值。 通过以上知识点的学习,可以更好地理解PL/SQL在Oracle数据库中的应用,特别是在进行用户管理和表操作方面的具体...
- **SELECT 语句**: 必须与 INTO 子句结合使用,且结果集只能包含一条记录。 - **DML 语句**: 可以直接使用,与 SQL 中的 DML 语句完全相同。 - **DDL 语句**: 需要使用 EXECUTE IMMEDIATE 语句。 #### 八、控制...
2. **聚合函数**:SQL提供了如COUNT(), SUM(), AVG(), MAX()和MIN()等聚合函数,用于统计和计算一组值的总和、平均值、最大值和最小值。 3. **联接操作**:JOIN语句允许将多个表的数据结合在一起,有内连接(INNER ...
在SQL中,组函数是用于处理一组值而不是单个值的函数,它们在数据聚合时非常有用。PL/SQL中的常见组函数包括: 1. COUNT():返回指定列的行数,可以统计非空值或所有行。 2. SUM():对指定列的所有数值进行求和。 3...
即当一个对数据库的查询操作返回一组结果集时,用游标来标注这组结果集,以后通过对游标的操作来获取结果集中的数据信息。这里特别提出游标的概念,是因为它在PL/SQL的编程中非常的重要。 定义游标的语法结构如下...
如果为此参数指定了一个值, 则该值将覆盖 make 文件中的默认值。 值范围: C 编译程序的完整路径。 默认值: 无 remote_dependencies_mode: 说明: 用于指定数据库为远程 PL/SQL 存储的过程处理被依赖对象的方式。如果...
- 存储过程是一组预编译的SQL语句和控制流语句,存储在数据库中供应用程序调用。 - 示例: ```plsql CREATE OR REPLACE PROCEDURE pro_ic AS CURSOR cur_so IS SELECT vBillCode, dBillDate FROM ic_saleout_h ...
此命令将向`products_tbl`表中插入一条新记录,其中`prod_id`为7725,`prod_desc`为'LEATHER',`cost`为26.99。 ##### 更新数据 (UPDATE) **语法:** ```sql UPDATE table_name SET column_name = new_value [WHERE...
- `MAX(DISTINCT|ALL|N expr)`:最大值 - `MIN(DISTINCT|ALL|N expr)`:最小值 - `SUM(DISTINCT|ALL|N expr)`:求和 - `STDDEV(DISTINCT|ALL|N expr)`:标准偏差 - `VARIANCE(DISTINCT|ALL|N expr)`:方差 #### ...
- **GREATEST/LEAST**:分别返回一组值中的最大值和最小值。 - **USER**:返回当前用户的用户名。 #### 第五天:SQL中的子句 - **WHERE子句**:用于过滤记录,只显示满足指定条件的行。 - **STARTING WITH子句**...
- **解析**: 此语句选择`inventory`表中`summary`字段值大于或等于其他所有记录中`summary`字段最大值的记录。 **2. 更新特定条件下的记录** - **SQL语句**: `UPDATE inventory SET summary = summary * 0.8 ...
表格中的每一行称为一个记录或元组,每一列则代表一个属性或字段。 - **Codd十二法则:** Codd提出的十二条规则用于评估关系数据库管理系统是否真正符合关系模型的标准。这些规则涉及数据独立性、完整性约束、数据...
- Linux核心参数:`kernel.shmall`和`kernel.shmmax`控制共享内存段的最大值,`kernel.shmmni`设置系统中最大共享内存段数量。 3. **DB题** - **事务**:是数据库操作的基本单位,保证数据的一致性。ACID特性包括...
- 这条命令将返回customers表中的所有记录。 #### 第三天:表达式、条件语句与运算 - **表达式**: - 在SQL中,表达式是由常量、变量、函数、运算符等组成的组合。 - 用于计算新的值。 - **条件语句**: - 如`...