2013-07-02 82 views
0
SELECT 
     DATEPART(YEAR, a.spdate) AS 'Year', 
     DATEPART(wk,a.spdate) AS 'WeekNo', 
     MONTH(a.spdate) As 'Month', 
     MIN(DATEADD(wk, DATEDIFF(wk,0,a.date), 0)) AS 'WeekDate', 
     SUM(COALESCE(a.value,0)) AS 'Value' 
    FROM patient a 
    JOIN dp account ON (a.id = d.id) 
WHERE 
a.id NOT IN (SELECT id FROM doctor) 
GROUP BY DATEPART(YEAR,a.spdate),MONTH(a.spdate) 
+5

你为什么选择'WeekNo'? – Andomar

回答

0

,当你想通过每月总结试试这个

SELECT 
    DATEPART(YEAR, a.spdate) AS 'Year', 
    MONTH(a.spdate) As 'Month',  
    SUM(COALESCE(a.value,0)) AS 'Value' 
FROM patient a 
JOIN dp account ON (a.id = d.id) 
WHERE 
a.id NOT IN (SELECT id FROM doctor) 
GROUP BY DATEPART(YEAR,a.spdate),MONTH(a.spdate) 
+0

Hai,如何获取月份作为Jan,Feb而不是1,2 – kvs

+0

试试这个'convert(char(3),a.spdate,0)' – Amit

+0

Hai,如何添加月份名和月份号 – kvs