Nhóm dữ liệu theo MONTH trên cột DATETIME trong SQL Server


7

Tôi có một bảng Employeecó các cột Id, Ngày tham gia và Tên

Ngày tham gia là một DATETIMEcột.

Tôi muốn biết có bao nhiêu người dùng đã tham gia trong tháng 10?

Câu trả lời:


7

Nếu bạn chỉ tìm kiếm tháng mười bất kể năm nào , thì cách dễ dàng nhất là chỉ COUNTcác hồ sơ từ tháng đó:

SELECT COUNT(*) AS NumberOfJoiners FROM Employee WHERE MONTH(DateOfJoining) = 10;

hoặc là

SELECT COUNT(*) AS NumberOfJoiners FROM Employee WHERE DATEPART(MONTH, DateOfJoining) = 10;

Nếu bạn muốn nhóm theo năm, thì bạn sẽ cần một nhóm theo mệnh đề, nếu không, tháng 10 năm 2013, 2014, 2015 sẽ chỉ được nhóm thành một hàng:

SELECT 
  DATEPART(YEAR, DateOfJoining) AS YearOf Joining, 
  COUNT(*) AS NumberOfJoiners 
FROM Employee
WHERE DATEPART(MONTH, DateOfJoining) = 10
GROUP BY DATEPART(YEAR, DateOfJoining);

Cho đến ngày hỏi, tôi muốn nói có khả năng thứ ba và rất có thể: chúng tôi tìm kiếm số lượng người dùng đã tham gia vào tháng 10 năm 2014 .
AakashM
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.