oracle,查询每个部门的名称,部门人数,部门平均工资,平均服务年限。
时间: 2024-06-14 14:04:53 浏览: 376
以下是使用Oracle查询每个部门的名称,部门人数,部门平均工资和平均服务年限的示例:
```sql
SELECT d.dname AS 部门名称, COUNT(e.empno) AS 部门人数, ROUND(AVG(e.sal), 2) AS 部门平均工资, ROUND(AVG(e.hiredate - e.sysdate), 2) AS 平均服务年限
FROM emp e
JOIN dept d ON e.deptno = d.deptno
GROUP BY d.dname;
```
这个查询语句使用了两个表:emp(员工表)和dept(部门表)。通过将这两个表连接起来,并使用GROUP BY子句按部门名称分组,我们可以得到每个部门的名称,部门人数,部门平均工资和平均服务年限。
相关问题
按部门名称统计员工数量、平均工资和平均工作年限。 用oracke
在Oracle数据库中,你可以使用SQL查询结合GROUP BY语句来按部门名称统计员工的数量、平均工资和平均工作年限。假设我们有一个名为"Employees"的表,其中包含"DepartmentName", "EmployeeID", "Salary", 和 "YearsOfService"字段,以下是基本的SQL查询示例:
```sql
SELECT DepartmentName,
COUNT(EmployeeID) AS EmployeeCount,
AVG(Salary) AS AverageSalary,
AVG(YearsOfService) AS AverageYearsOfService
FROM Employees
GROUP BY DepartmentName;
```
这个查询的工作原理是:
1. `SELECT DepartmentName`:选择你要按照其分组的字段。
2. `COUNT(EmployeeID)`:计算每个部门有多少名员工。
3. `AVG(Salary)`:计算每个部门的平均工资。
4. `AVG(YearsOfService)`:计算每个部门的平均工作年限。
5. `FROM Employees`:指定数据来源表。
6. `GROUP BY DepartmentName`:按照部门名称对结果进行分组,以便对每个部门的数据进行独立的统计。
阅读全文