--按日
--select sum(price),day([date]) from table_name where year([date]) =
'2006' group by day([date])
--按周quarter
select sum(price),datename(week,price_time) from ble_name where
year(price_time) = '2008' group by datename(week,price_time)
--按月
select sum(price),month(price_time) from ble_name where year(price_time)
= '2008' group by month(price_time)
--按季
select sum(price),datename(quarter,price_time) from ble_name where
year(price_time) = '2008' group by datename(quarter,price_time)
--按年
select sum(price),year(price_time) from ble_name where
year(price_time) >= '2008' group by year(price_time)
和按月份组的原理是一样的吧!
按月分组
按季度分组和按月分组的区别应该就是时间段的区别吧!
select case when month(date) =1 or month(date) =2or month(date)=3 then '一季度'
when month(date) =4 or month(date) =5
or month(date)=6 then '2季度'
when month(date) =7 or month(date) =8
or month(date)=9 then '3季度'
when month(date) =10 or month(date) =11
or month(date)=12 then '4季度'
else '' end ,sum(数量)
from table
group by
case when month(date) =1 or month(date) =2
or month(date)=3 then '一季度'
when month(date) =4 or month(date) =5
or month(date)=6 then '2季度'
when month(date) =7 or month(date) =8
or month(date)=9 then '3季度'
when month(date) =10 or month(date) =11
or month(date)=12 then '4季度'
else '' end
俩方法
select year(订单.订购日期)年份,sum(case when month(订单.订购日期) between 1 and 3 then 订单明细.单价*订单明细.数量 else 0 end) 一季度销售金额,
sum(case when month(订单.订购日期) between 4 and 6 then 订单明细.单价*订单明细.数量 else 0 end) 二季度销售金额,
sum(case when month(订单.订购日期) between 7 and 9 then 订单明细.单价*订单明细.数量 else 0 end) 三季度销售金额,
sum(case when month(订单.订购日期) between 10 and 12 then 订单明细.单价*订单明细.数量 else 0 end) 四季度销售金额
from 订单,订单明细
where 订单.订单ID=订单明细.订单ID and year(订单.订购日期) between 1996 and 1998
group by year(订单.订购日期) select year(订单.订购日期) 年份,
case when month(订单.订购日期) between 1 and 3 then '一季度'
when month(订单.订购日期) between 4 and 6 then '二季度'
when month(订单.订购日期) between 7 and 9 then '三季度'
when month(订单.订购日期) between 10 and 12 then '四季度' end 季度,
sum(订单明细.单价*订单明细.数量) 金额
from 订单,订单明细
where 订单.订单ID=订单明细.订单ID and year(订单.订购日期) between 1996 and 1998
group by year(订单.订购日期),
case when month(订单.订购日期) between 1 and 3 then '一季度'
when month(订单.订购日期) between 4 and 6 then '二季度'
when month(订单.订购日期) between 7 and 9 then '三季度'
when month(订单.订购日期) between 10 and 12 then '四季度' end
你看你要用哪个
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)