SQL-ROW_NUMBER() OVER函数的基本用法(源码案例)
SELECT SUM(t.AdjustedBalance) AS Allqmye FROM (
SELECT * FROM (
SELECT
ROW_NUMBER() OVER ( PARTITION BY change.AccountSysNo ORDER BY change.indate DESC ) AS RowNumber ,
(CASE WHEN account.Source=1 THEN account.VendorSysNo ELSE account.DistributorSysNo END ) AS SysNo,
change.InDate,
change.AccountSysNo,
change.AdjustedBalance
FROM [BBCFinance].[dbo].[AccountBalanceChange] change
INNER JOIN BBCAccount.dbo.Account account ON account.SysNo = change.AccountSysNo
LEFT JOIN BBCAccount.dbo.Vendor V WITH ( NOLOCK ) ON V.SysNo = Account.VendorSysNo
LEFT JOIN BBCAccount.dbo.Distributor D WITH ( NOLOCK ) ON D.SysNo = Account.DistributorSysNo ) r WHERE SysNo=2272 AND InDate >= '2016/11/23 0:00:00' AND InDate <= '2016/11/30 0:00:00'
) t WHERE RowNumber=1 SELECT SUM(t.AdjustedBalance) FROM (
SELECT
ROW_NUMBER() OVER ( PARTITION BY change.AccountSysNo ORDER BY change.indate DESC ) AS RowNumber ,
(CASE WHEN Account.Source=1 THEN Account.VendorSysNo ELSE Account.DistributorSysNo END ) AS SysNo,
change.AccountSysNo,
change.AdjustedBalance
FROM [BBCFinance].[dbo].[AccountBalanceChange] change
INNER JOIN BBCAccount.dbo.Account account ON account.SysNo = change.AccountSysNo
LEFT JOIN BBCAccount.dbo.Vendor V WITH ( NOLOCK ) ON V.SysNo = Account.VendorSysNo
LEFT JOIN BBCAccount.dbo.Distributor D WITH ( NOLOCK ) ON D.SysNo = Account.DistributorSysNo
WHERE account.VendorSysNo = 2272
AND change.InDate >= '2016/11/23 0:00:00' AND change.InDate <= '2016/11/29 23:59:59'
) t
WHERE t.RowNumber=1
SQL-ROW_NUMBER() OVER函数的基本用法(源码案例)的更多相关文章
- SQL ROW_NUMBER() OVER函数的基本用法用法
语法:ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN) 简单的说row_number()从1开始,为每一条分组记录返回一个数字,这里的ROW ...
- ROW_NUMBER() OVER函数的基本用法用法
ROW_NUMBER() OVER函数的基本用法用法 转自:http://www.cnblogs.com/icebutterfly/archive/2009/08/05/1539657.html 语法 ...
- ROW_NUMBER() OVER函数的基本用法,也可用于去除重复行
语法:ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN) 简单的说row_number()从1开始,为每一条分组记录返回一个数字,这里的ROW ...
- Linux下使用FreeTDS访问MS SQL Server 2005数据库(包含C测试源码)
Linux下使用FreeTDS访问MS SQL Server 2005数据库(包含C测试源码) http://blog.csdn.net/helonsy/article/details/7207497 ...
- Shiro学习笔记总结,附加" 身份认证 "源码案例(一)
Shiro学习笔记总结 内容介绍: 一.Shiro介绍 二.subject认证主体 三.身份认证流程 四.Realm & JDBC reaml介绍 五.Shiro.ini配置介绍 六.源码案例 ...
- Android多线程全面解析:IntentService用法&源码
前言 多线程的应用在Android开发中是非常常见的,常用方法主要有: 继承Thread类 实现Runnable接口 AsyncTask Handler HandlerThread IntentSer ...
- 黄聪:WordPress动作钩子函数add_action()、do_action()源码解析
WordPress常用两种钩子,过滤钩子和动作钩子.过滤钩子相关函数及源码分析在上篇文章中完成,本篇主要分析动作钩子源码. 然而,在了解了动作钩子的源码后你会发现,动作钩子核心代码竟然跟过滤钩子差不多 ...
- Flink Sql 之 Calcite Volcano优化器(源码解析)
Calcite作为大数据领域最常用的SQL解析引擎,支持Flink , hive, kylin , druid等大型项目的sql解析 同时想要深入研究Flink sql源码的话calcite也是必备 ...
- 微信小程序源码案例大全
微信小程序demo:足球,赛事分析 小程序简易导航 小程序demo:办公审批 小程序Demo:电魔方 小程序demo:借阅伴侣 微信小程序demo:投票 微信小程序demo:健康生活 小程序demo: ...
随机推荐
- EntityFramework 简单入个门
任何一个和数据相关的系统里,数据持久化都是一个不容忽视的问题. 一直以来,Java 平台出了很多 NB 的 ORM 框架,Hibernate.MyBatis等等..NET 平台上,ORM 框架这一块一 ...
- Android开发系列之屏幕密度和单位转换
由于Android的开源性,所以目前市面上面Android手机的分辨率特别多,这样的话就给我适配带来了一定的难度.要想做好适配,我们首先应该明白什么是分辨率.PPI.屏幕大小等概念,还有在不同的屏幕密 ...
- jquery常用的一些方法
一.选择网页元素(标签选择器) $(document) //选择整个文档对象 $('#myId') //选择ID为myId的网页元素 $('div.myClass') // 选择class为myCla ...
- HDU 2568[前进]模拟
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2568 关键思想:傻傻地模拟 代码如下: #include<iostream> using ...
- u3d脚本生命周期
- GIS制图课程目录
由于更新次序跳跃式更新,因此很有必要整理一下全书目录,并将会按照实际学习的顺序进行更新. [前言] GIS制图课程前言 [理论篇] 理论篇-地图学与GIS制图的基础理论(一) 理论篇-地图学与GIS制 ...
- oracle数据库在mybatis中使用uuid
<insert id="insert" parameterType="com.xxx.SystemDepartment"> <sele ...
- C#剪贴板对文件的复制、粘贴操作
1.把文件加到剪贴板: System.Collections.Specialied.StringCollection files=new System.Collections.Specialied.S ...
- Linux 6.4 partprobe出现warning问题
今天在给服务器做LVM的时候(服务器的系统是CentOS 6.3),用fdisk分区之后,用w写入分区表的时候,就提示Command (m for help): wThe partition tabl ...
- NSRunLoop原理详解——不再有盲点
编程最怕的就是有盲点,不确定,而runloop官网对其提及的又很少:那么看完这篇应该使你有底气很多~ RunLoop整体介绍 An event-processing loop, during whic ...