如何从当前日期sql查询获取每个月的数据

Neo*_*Neo 2 sql sql-server

任何帮助都会很棒,因为我不擅长 SQL 查询:)

谢谢

我有一个名为注册的表

我想获得每个月注册总数的所有记录。

例如这个月是 Jun

所以数据会带回来

January 500

February 200

March 600

April 100

May 800

Jun 400
Run Code Online (Sandbox Code Playgroud)

我现在拥有什么

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()))
Run Code Online (Sandbox Code Playgroud)

现在它仅拉动上个月的数据,因为我没有 6 月的任何数据

CreatStamp 是小日期时间

Har*_* CO 5

看来您所需要的只是:

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)
Run Code Online (Sandbox Code Playgroud)

您想通过 DATEPART...GETDATE() 业务实现什么目标?