【发布时间】:2021-06-07 21:12:24
【问题描述】:
我一直在尝试找出如何对 datetime2 中的年份进行分组和计数。日期的其余部分无关紧要,只要它具有相同的年份,我希望它被计算和分组。这是我到目前为止的查询。我试图以整数形式获取日期的年份,并使用 count 方法试试运气,但只有在日期值完全相同时才会计算它。
DECLARE @user_id [int] =12
SELECT [date],user_id, COUNT(YEAR([date])) as yearCount
from table
where table.user_id = @user_id
group by date,user_id
查询显示的内容:
date user_id yearCount
------- ------- -----------
2020-11-12 00:00:00.0000000 12 1
2020-05-23 00:00:00.0000000 12 1
2021-06-01 00:00:00.0000000 12 1
2021-04-15 00:00:00.0000000 12 1
2022-02-20 00:00:00.0000000 12 1
2022-01-20 00:00:00.0000000 12 1
我希望它是什么样子:
date user_id yearCount
------- ------- -----------
2020-11-12 00:00:00.0000000 12 2
2020-05-23 00:00:00.0000000 12 2
2021-06-01 00:00:00.0000000 12 2
2021-04-15 00:00:00.0000000 12 2
2022-02-20 00:00:00.0000000 12 2
2022-01-20 00:00:00.0000000 12 2
【问题讨论】:
标签: sql sql-server date tsql datetime