I have the following function: -
ALTER FUNCTION fncTest ()
RETURNS TABLE
AS
RETURN
(SELECT *
FROM (SELECT TOP 100 PERCENT sOrderType,
SUM(iQty) AS iOrdQty,
( YEAR(dReqd) * 100 ) + DATEPART(Week, dReqd) AS iWkNo
FROM tblOrderBook
GROUP BY sOrderType,
dOrdered) AS tblTemp PIVOT(SUM(Qty) FOR iWkNo IN
([201118], [201119], [201120], [201121], [201122])) AS pvtTemp)
This gives me a pivoted table showing qtys of orders for weeks 18-22 of 2011.
Is it possible to replace the hard-coded weeks with dynamic dates based on GETDATE().
ie:
- replace
[201118]
with(YEAR(GETDATE()+7)*100)+DATEPART(week,GETDATE()+7)
- replace
[200119]
with(YEAR(GETDATE()+14)*100)+DATEPART(week,GETDATE()+14)
- replace
[200120]
with(YEAR(GETDATE()+21)*100)+DATEPART(week,GETDATE()+21)
etc...
Thanks.