B2C经典查询,统计 绝对用的上,根据日期分组统计当天各种支付方式的销售数量和销售额

简介: declare @sql varchar(8000) set @sql = 'select CONVERT(varchar(10), OrderDate, 120) as 日期' select @sql = @sql + ' , sum(...

declare @sql varchar(8000)
set @sql = 'select CONVERT(varchar(10), OrderDate, 120) as 日期'
select @sql = @sql + ' , sum(case PayWay when ''' + cast(Pwy as varchar)+ ''' then OrderAmount else 0 end)[' + cast(Pwy2 as varchar) + ']
,sum(case PayWay when ''' + cast(Pwy as varchar)+ ''' then 1 else 0 end)[' + cast(Pwy2 as varchar) + '销量]'

from (select distinct id as Pwy,PayWay as Pwy2 from dbo.A_OrderPayWay) as a
set @sql = @sql + ',sum( case OrderAmount when NULL then 0 else OrderAmount end ) as 合计,count(*) as 总订单   from A_OrderInfo group by
CONVERT(varchar(10), OrderDate, 120) Order by CONVERT(varchar(10), OrderDate, 120) desc'
exec(@sql)

备注

[' + cast(Pwy2 as varchar) + '销量] //列名转换

CONVERT(varchar(10), OrderDate, 120)    //获取订单日期的 年月日部分 

sum(case PayWay when ''' + cast(Pwy as varchar)+ ''' then OrderAmount else 0 end)  //统计每种支付方式的当天金额

sum(case PayWay when ''' + cast(Pwy as varchar)+ ''' then 1 else 0 end)  //统计每种支付方式的当天销售数量

select distinct id as Pwy from dbo.A_OrderPayWay  //获取所以支付类型



图片

目录
相关文章
|
3月前
|
自然语言处理 算法 前端开发
1484. 按日期分组销售产品
1484. 按日期分组销售产品
23 0
|
4月前
|
存储 搜索推荐 算法
14.如何把百万级别订单根据金额排序
14.如何把百万级别订单根据金额排序
10 0
|
4月前
|
存储 搜索推荐 算法
如何把百万级别的订单根据金额排序
如何把百万级别的订单根据金额排序
18 0
|
10月前
|
前端开发
检索业务:排序和价格区间及库存
检索业务:排序和价格区间及库存
淘宝批量复制宝贝提示“当前类目大于48小时发货的发货时间不能大于15天,请调整”怎么解决?
要复制这个宝贝上传到淘宝店铺,只需要重新复制一次,然后在大淘营淘宝宝贝复制专家下载配置的第二步,选择一个小于或等于15天的发货时间(见下图),这样就可以复制宝贝上传到淘宝店铺了。
【SQL开发实战技巧】系列(十四):计算消费后的余额&计算银行流水累计和&计算各部门工资排名前三位的员工
本篇文章讲解的主要内容是:***通过模拟计算消费流水账及计算银行流水累计和讲解sum()over()函数使用场景、通过计算各部门工资排名前三位的员工小案例来介绍ROW_NUMBER、RANK、DENSE_RANK使用方法及区别***
【SQL开发实战技巧】系列(十四):计算消费后的余额&计算银行流水累计和&计算各部门工资排名前三位的员工
7-19 树种统计 (10 分)
7-19 树种统计 (10 分)
86 0
|
数据库
LeetCode(数据库)- 按日期分组销售产品
LeetCode(数据库)- 按日期分组销售产品
96 0
|
数据库
使用子查询统计每个客户预订线路的数量,要求按照预订线路数升序显示客户姓名和预订线路数
使用子查询统计每个客户预订线路的数量,要求按照预订线路数升序显示客户姓名和预订线路数
94 0