要在SQL Server中按雇用日期分组?

时间:2013-08-26 16:18:09

标签: sql-server

假设下表

员工

EmployeeID           INT
FirstName            VARCHAR(50)
LastName             VARCHAR(50)
SupervisorEmployeeID INT
Salary               MONEY
HireDate             DATETIME
  1. 如何显示过去5年每年雇用的员工人数还包括这些年雇用的员工的平均工资。

  2. 如何显示过去5年每年雇用的员工人数还包括这些年雇用的员工的平均工资。

1 个答案:

答案 0 :(得分:2)

在SQL中查看DatePart函数。它将根据提供的时间间隔(即日,月,年等)分解和分组日期

示例:

SELECT
    DatePart(year,HireDate)
    ,Count(emplid)
    ,AVG(salary)
FROM Employee
WHERE DATEDIFF(YEAR, HireDate, GetDate) <= 4
GROUP BY DatePart(year,HireDate) 
ORDER BY DatePart(year,HireDate) asc