select SaleDate as 日期,AreaId as 区域ID,areaName as 区域名称,TotalNum as 数量,TotalAmount as 金额 from View_CrystalSale 这是sql语句
结果如下
日期 区域ID 区域名称 数量 金额
2008-07-01 00:00:00.000 3 华东 42 77444
2008-12-01 00:00:00.000 2 华北 18 112776
2009-02-01 00:00:00.000 5 西北 40 35550
2009-07-01 00:00:00.000 4 华南 50 820000
2009-09-01 00:00:00.000 5 西北 16 12080
要求选择 年份 开始月份 结束月份和要对比的年份
然后查询结果如下
2009年1-10月 2010年1-10月 09,10年(1-10月)同期对比%
09数量 09金额 09平均单价 10数量 10金额 10平均单价 数量 金额 单价
华东 XX XXXX XXX XX XXXX XXX XX% XX% XX%
华北 XX XXXX XXX XX XXXX XXX XX% XX% XX%
西北 XX XXXX XXX XX XXXX XXX XX% XX% XX%
西北 XX XXXX XXX XX XXXX XXX XX% XX% XX%
华南 XX XXXX XXX XX XXXX XXX XX% XX% XX%
全国合计 XX XXXX XXX XX XXXX XXX XX% XX% XX%在线等大侠解答
结果如下
日期 区域ID 区域名称 数量 金额
2008-07-01 00:00:00.000 3 华东 42 77444
2008-12-01 00:00:00.000 2 华北 18 112776
2009-02-01 00:00:00.000 5 西北 40 35550
2009-07-01 00:00:00.000 4 华南 50 820000
2009-09-01 00:00:00.000 5 西北 16 12080
要求选择 年份 开始月份 结束月份和要对比的年份
然后查询结果如下
2009年1-10月 2010年1-10月 09,10年(1-10月)同期对比%
09数量 09金额 09平均单价 10数量 10金额 10平均单价 数量 金额 单价
华东 XX XXXX XXX XX XXXX XXX XX% XX% XX%
华北 XX XXXX XXX XX XXXX XXX XX% XX% XX%
西北 XX XXXX XXX XX XXXX XXX XX% XX% XX%
西北 XX XXXX XXX XX XXXX XXX XX% XX% XX%
华南 XX XXXX XXX XX XXXX XXX XX% XX% XX%
全国合计 XX XXXX XXX XX XXXX XXX XX% XX% XX%在线等大侠解答
解决方案 »
- 请教,关于自动备份
- 字段合并
- 【提问】fetch into 只获取第二个字段,不获取第一个字段。
- 如何模糊查询某字段以"["(方括号)开头的值,即"columnname like '[%'"的正确写法是什么?
- 如何尽量降低数据处理时间?
- 求一个类似google主页的统计功能
- sql查询问题
- 哪里有sql server 2000个人版下载呢?
- 有请pengdali(大力 V2.0)来帮我看看,多谢
- SOS!!!各位大虾,谁知道如何在PB中动态添加控件?
- 求多表联合查询SQL语句
- sp_executesql 执行出现 过程需要类型为 'ntext/nchar/nvarchar' 的参数 '@statement'。的错误
select 区域名称,
sum(case when year(日期) = 2009 then 数量 else 0 end) as [09数量],
sum(case when year(日期) = 2009 then 金额 else 0 end) as [09金额],
case sum(case when year(日期) = 2009 then 1 else 0 end) when 0 then 0 else
sum(case when year(日期) = 2009 then 金额/数量 else 0 end)/sum(case when year(日期) = 2009 then 1 else 0 end)
end as [09平均单价],
sum(case when year(日期) = 2010 then 数量 else 0 end) as [10数量],
sum(case when year(日期) = 2010 then 金额 else 0 end) as [10金额],
case sum(case when year(日期) = 2010 then 1 else 0 end) when 0 then 0 else
sum(case when year(日期) = 2010 then 金额/数量 else 0 end)/sum(case when year(日期) = 2010 then 1 else 0 end)
end as [10平均单价]
from [tb]
where month(日期) not in (11,12)
group by 区域名称