B2C经典查询,统计 绝对用的上,根据日期分组统计当天各种支付方式的销售数量和销售额
2014-09-30 10:47
489 查看
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 //获取所以支付类型
相关文章推荐
- 根据日期分组,查询数量、总量等信息
- oralce -根据日期字段查询一年中每月某项的统计数量
- oracle 中 查询 销售表中 统计当天 成交的笔数
- 根据日期统计某一个字段的在当天的总和
- mysql下按日期分组查询数量
- 统计查询-根据条件进行count的两种实现方式- oracle
- 记录一个mysql按日期分组统计的查询
- oracle分组统计查询之后,获取数量最大的记录
- 记录一个mysql按日期分组统计的查询
- mysql按日期分组(group by)查询统计的时候,没有数据补0的解决办法。
- 记录一个mysql按日期分组统计的查询
- mysql group by having用法+having where之间的区别+group by按日期分组统计的查询
- mysql按日期分组(group by)查询统计的时候,没有数据补0的解决办法
- mysql按日期分组统计查询
- 记录一个mysql按日期分组统计的查询
- Mysql 根据日期分组查询
- 求思路:递归查询后,数据根据父节点分组统计!!!
- sql查询技巧,按时间分段进行分组,每半小时一组统计组内记录数量
- mysql按日期分组(group by)查询统计的时候,没有数据补0的解决办法
- 记录一个mysql按日期分组统计的查询