
在SQL Server数据库查询过程中,我们有时候需要在查询当前行时,同时将上一(几)行或下一(几)行数据与当前行合并到一行,进行合并查询。便于做计算或查询显示。本文我们给出了一个例子,通过这个例子我们来了解一下如何把当前行、上一行和下一行的数据合并在一起进行查询。
本例子的代码:
- with t as
- (
- select top 1000 * from 客户资金表名
- where 客户名称='北京科技公司'
- order by 创建时间
- ),t1 as
- (
- SELECT top 1000 当前行=ROW_NUMBER() OVER(ORDER BY 创建时间),* FROM t
- ),t2 as
- (
- SELECT top 1000 当前行=ROW_NUMBER() OVER(ORDER BY 创建时间),* FROM t
- )
- select
- t1.客户名称,t1.结余资金帐 as 本期结余资金帐,t1.创建时间
- t2.结余资金帐 as 上期结余资金帐
- from t1,t2 where t1.当前行=(t2.当前行+1)
如果您还是不太明白上面的代码,没有关系,下图给出了上面代码的详细解释,相信您一定会看懂的。
相信通过上面的代码示例和图中的代码解释,我们一定能明白这一过程是怎么实现的了。关于SQL Server数据库当前行及上一行、下一行合并查询的知识就介绍到这里了,如果您想了解更多的关于SQL Server数据库的知识,可以看一下这里的文章:http://database./sqlserver/,相信一定会带给您收获的!
【编辑推荐】
- Oracle数据库的四个不同版本的新个性比拟
- Oracle数据库中如何检查索引碎片并重建索引
- 浅析Oracle 10g isqlplus使用DBA账户的方法
- 数据库优化技术之Oracle数据库动态绑定变量
- 简单介绍一下Oracle ERP上线后的迅捷管教和新功能
文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/237664.html<