sql材料分级统计及汇总案例参考
--第一步:根据系统编号、列、单价分组求和
select CLBH,DJ,sum(SL) as SL,sum(JE) as JE,Lie
into #TempSZCMX
from #ShouZhiCunMingXi group by Lie, CLBH , DJ order by Lie,CLBH
--第二步:列转行,分组求和
insert into #TempLastResults
SELECT YJ,EJ,
MoJi=(CASE WHEN grouping(YJ) = 1 THEN '0'
WHEN grouping(EJ) = 1 THEN [YJ]
when grouping(MoJi)=1 then [EJ] else MoJi END),
DJ,
sum(SYSL) SYSL,SUM(SYJE) SYJE,SUM(BYSL) BYSL,SUM(BYJE) BYJE,
SUM(CKSL) CKSL,SUM(CKJE) CKJE,SUM(RKSL) RKSL,SUM(RKJE) RKJE
--into #TempLastResults
from
(
select CaiLiaoXinxi_1.SJ AS YJ,CaiLiaoXinxi_1.BH AS EJ,CaiLiaoXinxi.BH AS MoJi,DJ,
sum(case Lie when '上月' then SL else 0 end) as 'SYSL',
sum(case Lie when '上月' then JE else 0 end) as 'SYJE',
sum(case Lie when '本月' then SL else 0 end) as 'BYSL',
sum(case Lie when '本月' then JE else 0 end) as 'BYJE',
sum(case Lie when '出库' then SL else 0 end) as 'CKSL',
sum(case Lie when '出库' then JE else 0 end) as 'CKJE',
sum(case Lie when '入库' then SL else 0 end) as 'RKSL',
sum(case Lie when '入库' then JE else 0 end) as 'RKJE'
from #TempSZCMX inner join CaiLiaoXinxi ON #TempSZCMX.CLBH =CaiLiaoXinxi.XTBH
INNER JOIN CaiLiaoXinxi CaiLiaoXinxi_1 ON CaiLiaoXinxi.SJ=CaiLiaoXinxi_1.BH
GROUP BY CaiLiaoXinxi.BH ,CaiLiaoXinxi_1.BH,CaiLiaoXinxi_1.SJ,DJ
) as MingXi
group by YJ,EJ,MoJi,DJ with rollup having grouping(MoJi) =1 union all
select CaiLiaoXinxi_1.SJ AS YJ,CaiLiaoXinxi_1.BH AS EJ,CaiLiaoXinxi.BH AS MoJi,DJ,
sum(case Lie when '上月' then SL else 0 end) as 'SYSL',
sum(case Lie when '上月' then JE else 0 end) as 'SYJE',
sum(case Lie when '本月' then SL else 0 end) as 'BYSL',
sum(case Lie when '本月' then JE else 0 end) as 'BYJE',
sum(case Lie when '出库' then SL else 0 end) as 'CKSL',
sum(case Lie when '出库' then JE else 0 end) as 'CKJE',
sum(case Lie when '入库' then SL else 0 end) as 'RKSL',
sum(case Lie when '入库' then JE else 0 end) as 'RKJE'
--into #TempLastResults
from #TempSZCMX inner join CaiLiaoXinxi ON #TempSZCMX.CLBH =CaiLiaoXinxi.XTBH
INNER JOIN CaiLiaoXinxi CaiLiaoXinxi_1 ON CaiLiaoXinxi.SJ=CaiLiaoXinxi_1.BH
GROUP BY CaiLiaoXinxi.BH ,CaiLiaoXinxi_1.BH,CaiLiaoXinxi_1.SJ,DJ
--第三步:求最终结果
select MC,GG,DW,DJ,SYSL,SYJE,RKSL,RKJE,CKSL,CKJE,BYSL,BYJE
from #TempLastResults inner join
(
SELECT '0' AS BH,'全部材料总计' AS MC,'' AS GG,'' AS DW
UNION ALL
SELECT BH,(MC+' 合计') AS MC,GG,DW FROM CaiLiaoXinxi WHERE SJ='0' and MJ=0
UNION ALL SELECT BH,(MC+' 小计') AS MC,GG,DW FROM CaiLiaoXinxi WHERE SJ<>'0' AND MJ=0
UNION ALL SELECT BH, MC,GG,DW FROM CaiLiaoXinxi WHERE MJ=1
) AS B on B.BH=#TempLastResults.MoJi and B.BH like @LeiBie order by B.BH
sql材料分级统计及汇总案例参考的更多相关文章
- sql简单实用的统计汇总案例参考
USE [PM]GO/****** 对象: StoredProcedure [dbo].[LfangSatstics] 脚本日期: 08/24/2013 10:57:48 ******/SET ...
- c#Winform程序调用app.config文件配置数据库连接字符串 SQL Server文章目录 浅谈SQL Server中统计对于查询的影响 有关索引的DMV SQL Server中的执行引擎入门 【译】表变量和临时表的比较 对于表列数据类型选择的一点思考 SQL Server复制入门(一)----复制简介 操作系统中的进程与线程
c#Winform程序调用app.config文件配置数据库连接字符串 你新建winform项目的时候,会有一个app.config的配置文件,写在里面的<connectionStrings n ...
- sql 按年月日统计
1.每年select year(ordertime) 年,sum(Total) 销售合计from 订单表group by year(ordertime) 2.每月select year(orderti ...
- 《高性能SQL调优精要与案例解析》一书谈SQL调优(SQL TUNING或SQL优化)学习
<高性能SQL调优精要与案例解析>一书上市发售以来,很多热心读者就该书内容及一些具体问题提出了疑问,因读者众多外加本人日常工作的繁忙 ,在这里就SQL调优学习进行讨论并对热点问题统一作答. ...
- SQL Server 后续去除功能汇总
原文:SQL Server 后续去除功能汇总 功能更新去除汇总 字段类型 在 Microsoft SQL Server 的未来版本中将删除 ntext.text 和 image 数据类型. 请避免在新 ...
- 《高性能SQL调优精要与案例解析》——10.4_SQL语句改写部分文档
应各位读者要求,现将<高性能SQL调优精要与案例解析>中<10.4 SQL语句改写>部分整理成电子文档,上传至群共享文件(群号:298176197): 或者通过如下链接下载: ...
- 《高性能SQL调优精要与案例解析》一书谈主流关系库SQL调优(SQL TUNING或SQL优化)核心机制之——索引(index)
继<高性能SQL调优精要与案例解析>一书谈SQL调优(SQL TUNING或SQL优化),我们今天就谈谈各主流关系库中,占据SQL调优技术和工作半壁江山的.最重要的核心机制之一——索引(i ...
- sql之分段统计
sql之分段统计 需求:获取一个县所有家庭人数在1-2人,3-4人,5-6人,6人以上的家庭数的数组 思路:通过CASE WHEN 将 CBFCYSL分组,然后统计数据条数. 语句: SELECT T ...
- SQL Server一个特殊的阻塞案例分析2
最近发现一个非常奇怪的阻塞问题,如下截图所示(来自监控工具DPA),会话583被会话1036阻塞,而且阻塞发生在tempdb,被阻塞的SQL如下截图所示,会话等待类型为LCK_M_S 因为DPA工具不 ...
随机推荐
- 单机部署redis主从备份
redis为了避免单点故障,也支持主从备份.个人在做主从备份的实验时,因为机器数量有限,一般非常少有多台机器做支撑. 本文就将叙述怎样在一台电脑上实现redis的主从备份. 同一台机器上部署多个red ...
- BMP文件格式及读写
转 http://blog.csdn.net/pkueecser/article/details/5579604 http://blog.csdn.net/pkueecser/article/deta ...
- 面向对象三大特征之继承(extends)——Java笔记(六)
继承: 从一般到特殊的关系,是一种拓展关系,子类对象是父类的一种,也可称为”is a“的关系 泛化: 把子类里的共性抽取到父类里的来的过程 特化: ...
- I2C驱动程序框架probe道路
基于Linux的I2C驱动器.采纳probe道路.根据这个框架,如下面就可以写任何支持I2C总线设备Linux驱动器. I2C设备连接到cpu具体i2c接口.被安装在cpu的i2c适配器.i2c设备和 ...
- T4模板使用技巧
=============C#.Net 篇目录============== 示例代码:示例代码__你必须懂的T4模板:浅入深出.rar (一)什么是T4模板? T4,即4个T开头的英文字母组合:Tex ...
- NET使用了UpdatePanel后如何弹出对话框!
原文:NET使用了UpdatePanel后如何弹出对话框! 在ajax中的UpdatePanel弹出对话窗,可以使用: ScriptManager.RegisterStartupScript(Upda ...
- 源码安装saltstack的时候遇到的问题
公司的系统都是内网,无法连接互联网,所以没办法只有源码安装了. 看了下saltstack的官网,需要安装的包有 https://docs.saltstack.com/en/latest/topics/ ...
- 2440裸 Delay(); 和 while(!(rUTRSTAT0 & 0x2)); 问题
前两天写RTC中断 使用串行输出 它发现,该方案将while(!(rUTRSTAT0 & 0x2));走不出的情况.的 解决方法: main函数添加: U32 mpll_val = 0,con ...
- 程序员的Scala
C#程序员的Scala之路第九章(Scala的层级) 摘要: 1.Scala的类层级Scala里类的顶端是Any所有的类都继承Any类,Any包括以下几个通用方法:final def ==(that: ...
- 教你一步一步部署.net免费空间OpenShift系列之四------绑定域名、使用CDN加速
很抱歉这几天没有时间,有人问我怎么绑定域名的问题也没有答复,下面进入正题,惊闻ASP.Net要开源了,难道.Net春天要来了?不废话,上回书说,部署完毕ASP.Net网站后,直接访问不能访问(嗯,众所 ...