首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

输入日期区间,自动出来每个月的集锦,可以做到吗

2013-09-05 
输入日期区间,自动出来每个月的汇总,可以做到吗当用户输入条件变量是 ’2013-01-01’和 ‘2013-03-01’查询的

输入日期区间,自动出来每个月的汇总,可以做到吗
当用户输入条件变量是 ’2013-01-01’  和 ‘2013-03-01’
查询的结果就是
SELECT 客户,规格,SUM(QUAN) AS 1月汇总,SUM(QUAN) AS 2月汇总,SUM(QUAN) AS 3月汇总
FROM --------

要求就是用户输入日期区间,SQL语句自动拆成 各月汇总, 这样子可以做到吗, 我已经看到高人已经做到了,但是我不知道如何写,盼高人指点,谢谢

[解决办法]
写存储过程啊
[解决办法]
对不起啊,我主要是写了核心的,加上日期区间很简单, 你定义@time1和@time2你肯定会,你定义后接受存储过程传进来的参数就可以了,然后下面就用我写的


Declare @sql varchar(max)   
set @sql=STUFF((select ','+QUOTENAME(CONVERT(varchar(7),[time],120))  from [Table_4] b
where b.[time] between @time1 and @time2
group by CONVERT(varchar(7),[time],120) FOR XML PATH('')) ,1,1,'')   

set @sql='select * from (SELECT CONVERT(varchar(7),[time],120) as saletime,[客户],[规格] FROM [master].[dbo].[Table_4]) t  pivot (sum([QUAN])for t.saletime in ('+@sql+')) a '  exec(@sql)   

热点排行