我有两张table Range 以及 Employee . Range 表由列组成
Range
Employee
minimum_salary, maximum salary, program
(可用于该工资的项目,如白金和银等)。 Employee 表有列
Emp_Id, Emp_Name, Salary
https://i.stack.imgur.com/rkaxp.png我想写一个sql查询,在range表中得到属于给定薪资范围的员工数,请参考表和结果集的屏幕截图。感谢您的帮助。谢谢
w46czmvw1#
你可以在不等式条件下加入:
select r.program, count(e.emp_id) no_employees from ranges r left join employees e on e.salary between r.min_salary and r.max_salary group by r.program
fcg9iug32#
请在中添加一列 Range 该名称的表 Emp_ID . 因为,把两个表连接起来会有帮助。我的意思是需要主键和外键。查询:
Emp_ID
select COUNT(e.empID), r.program FROM rangeTable AS r INNER JOIN empTable AS e ON e.salary BETWEEN r.min_salary AND r.max_salary GROUP BY r.program
2条答案
按热度按时间w46czmvw1#
你可以在不等式条件下加入:
fcg9iug32#
请在中添加一列
Range
该名称的表Emp_ID
. 因为,把两个表连接起来会有帮助。我的意思是需要主键和外键。查询: