博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UNION ALL实现的分级汇总示例.sql
阅读量:5751 次
发布时间:2019-06-18

本文共 716 字,大约阅读时间需要 2 分钟。

DECLARE @t TABLE(Item varchar(10),Color varchar(10),Quantity int)
INSERT @t SELECT 'Table','Blue',124
UNION ALL SELECT 'Table','Red', -23
UNION ALL SELECT 'Chair','Blue',101
UNION ALL SELECT 'Chair','Red', -90
--统计
SELECT Item,Color,Quantity
FROM(
    --明细
    SELECT Item,Color,Quantity=SUM(Quantity)
        ,s1=0,s2=Item,s3=0
    FROM @t
    GROUP BY Item,Color
    UNION ALL
    --各Item合计
    SELECT '',Item+' 合计',Quantity=SUM(Quantity)
        ,s1=0,s2=Item,s3=1
    FROM @t
    GROUP BY Item
    UNION ALL
    --总计
    SELECT '总计','',Quantity=SUM(Quantity)
        ,s1=1,s2='',s3=1
    FROM @t
)a ORDER BY s1,s2,s3
/*--结果
Item       Color           Quantity
-------------- ---------------------- -----------
Chair      Blue            101
Chair      Red             -90
          Chair 合计       11
Table      Red             -23
Table      Blue            124
          Table 合计       101
总计                      112
--*/

转载地址:http://jvkkx.baihongyu.com/

你可能感兴趣的文章
iOS app exception的解决方案
查看>>
Mongodb启动命令mongod参数说明
查看>>
TCP&UDP压力测试工具
查看>>
oracle 导入数据
查看>>
首个5G智慧机场落地广州 速度是4G的50倍
查看>>
Android 最简单的自定义Dialog之一
查看>>
磨刀不误砍柴 - 配置适合工作学习的桌面环境
查看>>
自己动手写docker-3
查看>>
Java笔记-反射机制(一)
查看>>
redux v3.7.2源码解读与学习之 applyMiddleware
查看>>
【React】为什么我不再使用setState?
查看>>
Git原理与高级使用(3)
查看>>
从JDK源码看Writer
查看>>
Express 结合 Webpack 实现HMRwi
查看>>
SQL模糊查询通配符_和%处理
查看>>
ssl免费申请
查看>>
我的友情链接
查看>>
基于protobuf的RPC实现
查看>>
坚信每个人都能成为品牌
查看>>
JAVA的对象复制
查看>>