1
使用Microsoft SQL Server 2008 R2,我试图递归地将12个查询的每月数据连接到1个查询和结果表中。我知道如何连接结果,如果我写出12次查询并加入每个查询,但查询已经有16行,所以我正在寻找一种递归的方式。Microsoft SQL Server - 递归连接
我将使用一个销售例如:
我有一个表具有以下确定指标
sales(ID int, EmpID int, dt datetime, amount numeric(5,2)).
用下面的查询,我得到12桌,我该如何加入他们一起上的EmpID哪有我的名字列标题与月/年:
DECLARE @mo INT, @yr INT
SET @mo = 1
SET @yr = YEAR(GETDATE())
WHILE (@mo < 13)
BEGIN
SELECT EmpID, SUM(numeric) AS Totals WHERE MONTH(dt) = @mo AND YEAR(dt) = @yr GROUP BY EmpID
SET @mo = @mo + 1
END
我想结果是这样的:
EmpID 1-2012 2-2012 ... 12-2012
----- ------- ------- -------
1 XXXX.XX XXXX.XX XXXX.XX
...
100 XXXX.XX XXXX.XX XXXX.XX
你可以提供更多的信息,我不明白12桌来自哪里。 – Juan