SQL 统计“工资”的“员工”数量

问题描述 投票:0回答:2

我想写一个查询。其内容与我下面发布的内容类似:

SELECT id, name, position, salary, 
    (SELECT COUNT(salary 's') FROM employees WHERE s = salary) As NumberofEmployeesWithSalary
FROM employees
WHERE hire_date BETWEEN '2013-01-01' AND '2014-12-31'

本质上,我所追求的是能够对具有特定的、动态定义的工资的员工人数进行求和(这样我就能够形成一个百分比)。我绞尽脑汁地在 Google、dev.MySQL 等上寻找答案。

我不知道这是否可能。我可能只需要将每个“薪资类型”分离到一个单独的

COUNT
查询中。

例如,如果我的数据包含:

Salary
------
30000
30000
30000
40000
40000
50000

我想返回 3 代表 30000,2 代表 40000,等等,特别是为了在另一个查询中使用该结果作为值来获取百分比。

mysql
2个回答
2
投票
SELECT salary, count(*)  As NumberofEmployeesWithSalary FROM employees
WHERE hire_date BETWEEN '2013-01-01' AND '2014-12-31'
GROUP BY salary;

尝试上面的查询,你应该得到类似这样的结果

Salary  NumberofEmployeesWithSalary
------  --------------------------
30000              3
40000              2
50000              1

0
投票

选择 计数(2.02.) 从 雇员 在哪里 工资!=( 选择 薪水 从 雇员 在哪里 月(结束日期)= 月(当前日期()) AND YEAR(结束日期) = YEAR(CURRENT_DATE()) ) AND 结束日期 > CURRENT_DATE()

© www.soinside.com 2019 - 2024. All rights reserved.