1. 程式人生 > >sqlserver 的查詢最近7天的資料 group by 與with的結合 以及系統表的妙用

sqlserver 的查詢最近7天的資料 group by 與with的結合 以及系統表的妙用

--測試資料

;WITH tab(Date,zt)AS(
select  CheckInDate as name,count(*) as value  from Base_Households group by CheckInDate
)
SELECT  
'第'+ltrim(Str(DAY(DATEDIFF(DAY,DATEADD(DAY, -number, GETDATE()), GETDATE()))))+'天' AS name, 
ISNULL(zt, 0) AS value 
FROM    master..spt_values

        LEFT JOIN tab ON DATEDIFF(DAY, DATEADD(DAY, -number, GETDATE()),
                         tab.Date) = 0
WHERE   type = 'P'
        AND number < 30;