【发布时间】:2020-05-31 15:58:37
【问题描述】:
我有两张桌子Range 和Employee。
Range 表由列组成
minimum_salary, maximum salary, program
(该薪水的可用计划,例如白金和白银等)。
Employee 表有列
Emp_Id, Emp_Name, Salary
https://i.stack.imgur.com/RKaXP.png
我想编写一个 SQL 查询,以获取范围表中低于给定工资范围的员工数量,请参阅截图以获取表格和结果集。
感谢任何帮助。谢谢
【问题讨论】:
-
您已经命名了三个版本的 SQL - 它是哪一个。您能否也请展示您迄今为止尝试过的内容,否则很难为您提供帮助。
-
如何处理范围的端点? (包括或不包括)例如,程序“XYZ”的工资范围是从 $20,000 到 $30,000。薪水正好为 20,000 美元的人是否有资格参加该计划? 30,000美元的薪水怎么样? (如果你对两者都回答“是”,那很可能是错误的。如果程序 'ABC' 的范围在 30,000 美元到 50,000 美元之间,那么薪水正好为 30,000 美元的某人有资格参加这两个程序,但薪水为 29,999.99 美元或 30,000.01 美元的人则没有;那不可能)
-
另外 - 范围是否可以是开放式的(例如,“所有低于 20,000 美元的工资”或“所有高于 60,000 美元的工资”),或者它们是否都有非
null的最低工资和非-null最高工资?
标签: sql sql-server join group-by count