输入日期区间,自动出来每个月的汇总,可以做到吗
当用户输入条件变量是 ’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)