惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
B
Blog
Jina AI
Jina AI
N
Netflix TechBlog - Medium
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园_首页
Hugging Face - Blog
Hugging Face - Blog
博客园 - 聂微东
美团技术团队
Google DeepMind News
Google DeepMind News
WordPress大学
WordPress大学
阮一峰的网络日志
阮一峰的网络日志
U
Unit 42
The Cloudflare Blog
V
V2EX
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
小众软件
小众软件
罗磊的独立博客
Microsoft Security Blog
Microsoft Security Blog
Apple Machine Learning Research
Apple Machine Learning Research
I
InfoQ
GbyAI
GbyAI
腾讯CDC
MongoDB | Blog
MongoDB | Blog

博客园 - herry507

在将 nvarchar 值 '0.00000' 转换成数据类型 int 时失败。 excel VBA点击图片放大缩小 mssql 解析XML 特殊字符造成浏览器显示异常 asysc /wait task 示例执行 MSSQL中解析JSON特殊字符 直接执行与EXCU里执行,竟效果不同 占有率最高的工业总线:PROFINET、Modbus 与 EtherCAT nvarchar和varchar区别 Wappalyzer的分析和欺骗 开窗函数进阶last_value特别地方 深入理解 Calculate 函数 android手机文件夹目录结构 手机文件管理目录 如何在Android中获取图片路径 线程间操作无效: 从不是创建控件“******”的线程访问它。 Android 整理常用的第三方库 androids上报表开发 为什么要用模块化、组件化才能完成 Android 项目中类加载功能? android多模块 安卓模块是什么意思 如何使用Android访问文件系统路径 让Android Studo 不编译某个Java文件 Java中list不包含某个元素 java list所在包 转载 解决AS插件与Gradle版本之间的对应问题
mssql 中group by cube,rollup,grouping示例
herry507 · 2025-05-19 · via 博客园 - herry507

mssql 中group by cube,rollup,grouping示例

--建表
if object_id('Orders','u') is not null drop table Orders
go
create table Orders (
OrderID INT
,CustomerID INT
,CustomerName varchar(20)
,ProductName varchar(20)
,SalesValue int
)
go
insert into Orders
values
(1,1, 'Lily','打印机',908)
,(2,1,'Lily','碎纸机',560)
,(3,2,'Coco','传真机',380)
,(4,2,'Coco','打印机',710)
,(5,2,'Coco','办公桌',420)
,(6,3,'Joe','办公椅',120)
,(7,4,'Emma','碎纸机',570)
,(8,1,'Lily','碎纸机',260)
,(9,3,'Joe','办公椅',100)
go


select CustomerID ,isnull(productname,'产品合计') as ProductName ,sum(salesvalue) as salevalue
from Orders
group by grouping sets ((customerid,productname))

select CustomerID ,sum(salesvalue) as salevalue
from Orders
group by grouping sets (CUBE(customerid))

select CustomerID ,isnull(productname,'产品合计') as ProductName ,sum(salesvalue) as salevalue
from Orders
group by grouping sets ((customerid,productname),(customerid))


select CustomerID ,isnull(productname,'产品合计') as ProductName ,sum(salesvalue) as salevalue
from Orders
group by customerid,productname with cube

select CustomerID ,isnull(productname,'产品合计') as ProductName ,sum(salesvalue) as salevalue
from Orders
group by customerid,productname with rollup


select CustomerID
,case when grouping (customerid) = 1 then '总计'
else isnull(ProductName,'产品合计') end as ProductName
,sum(salesvalue) as salevalue
from Orders
group by grouping sets ((customerid,productname),(customerid),())