2013-06-05 129 views
1

得到每個月的數據任何幫助將是巨大的,因爲我不擅長與SQL查詢:)如何從當前日期SQL查詢

謝謝

我有一個名爲註冊

我想獲得每個月總計註冊人數的所有記錄。

例如這個月是君

所以數據會帶回

January 500 

February 200 

March 600 

April 100 

May 800 

Jun 400 

什麼我現在

SELECT count(r.regID) AS totalCount 
FROM Registration r with(nolock) 
WHERE DATEPART(MONTH, createStamp) = DATEPART(MONTH, DATEADD(MONTH, -1, getdate())) 
    AND DATEPART(YEAR, createStamp) = DATEPART(YEAR, DATEADD(MONTH, -1, getdate())) 

現在其onlu上個月拉,因爲我沒有任何數據爲Jun

CreatStamp is smalldatetime

+0

基本上你需要使用Group By子句。通過這個鏈接:http://www.w3schools.com/sql/sql_groupby.asp – Learner

回答

2

這似乎是所有你需要的是:

SELECT YEAR(CREATESTAMP), MONTH(CREATESTAMP) COUNT(R.REGID) AS TOTALCOUNT 
FROM REGISTRATION R 
GROUP BY YEAR(CREATESTAMP), MONTH(CREATESTAMP) 
ORDER BY YEAR(CREATESTAMP), MONTH(CREATESTAMP) 

什麼是你想與DATEPART ... GETDATE()業務來完成?

+0

嗯,'DATEPART ... GETDATE()業務'只是給'上個月'... – MatBailie

+0

只是試圖拉總每個月的創建次數。現在它只是從5月的 – Neo

+0

提取數據然後,上面的查詢應該工作,正如德姆指出的,你告訴它通過從當前月份減去1個月來限制到最後一個月,但按YEAR和MONTH分組將會給你每年/每月計數一次。 –