我们有一个报告需要将 7 天的数据放入结果表中,如下所示:
declare @table table (ProductId int, product nvarchar(255), supplier nvarchar(255), day1 int, day2 int, day3 int, day4 int, day5 int, day6 int, day7 int)
然而问题是我目前运行 7 个几乎相同的插入语句。
insert @table (ProductId, product, supplier, day1)
select
productId,
product,
supplier,
COUNT(productId)
from
@results
where
createdDate = @Date
group by
CreatedDate, ProductId, Product, supplier
这个插入到第 1 天,但是我必须对第 2 天、第 3 天做同样的事情......只需更改@Date
我想做的是创建一个循环,该循环将根据当前循环插入正确的列(即正在处理第 1 天或第 2 天......)。
有没有办法将其动态设置为插入语句的正确列名?
我正在使用:sql server 2008R2