mysql实现oracle 分析函数row_number()over()
2016-05-20 10:05
615 查看
需求:对分组内的流水记录进行排序 这里根据日期进行排序,原始记录就是交易流水
代码如下:
SELECT b.app_no,
b.payment_date,
b.fact_payment_date,
IF(@deptno = b.app_no, @rn := @rn + 1, @rn := 1) AS rn,
@deptno := b.app_no AS deptno
FROM tests b, (select @rn := 0, @deptno := null) d
ORDER BY b.app_no, b.fact_payment_date desc
实现效果 (按第一列进行分组 第三列按倒序排序取rn)
代码如下:
SELECT b.app_no,
b.payment_date,
b.fact_payment_date,
IF(@deptno = b.app_no, @rn := @rn + 1, @rn := 1) AS rn,
@deptno := b.app_no AS deptno
FROM tests b, (select @rn := 0, @deptno := null) d
ORDER BY b.app_no, b.fact_payment_date desc
实现效果 (按第一列进行分组 第三列按倒序排序取rn)
相关文章推荐
- Oracle存储过程拼接in语句 & 自定义split函数
- 甲骨文:Android 是破坏开源的罪犯!
- 甲骨文:Android 是破坏开源的罪犯!
- Oracle数据库——表的创建与管理
- Oracle数据库——用户、方案的创建与管理
- Oracle 存储单位 m³ 存成m3的解决办法
- System.Data.OracleClient requires Oracle client software version 8.1.7 or greater
- mybatis关于mysql、oracle主键自增长
- Oracle job实现自动化任务
- oracle日常 常用函数与脚本
- 6.1、索引--Oracle模式对象
- Oracle10GODP连接11G数据库,出现ORA - 1017用户名/口令无效; 登录被拒绝 的问题
- Oracle问题整合
- Oracle查询(select)
- oracle拼接字段和group by的使用
- 【知识积累】使用Navicat连接Oracle数据库遇到的问题
- oracle sql学习三
- COALESCE函数
- 图解Oracle 12c 安装示例数据库
- Oracle10g新特性——正则表达式 - 转