SQL将值与另一个表中的两个值进行比较以返回值

时间:2015-07-15 16:13:42

标签: sql sqlite

我试图通过将值与其他两个值进行比较来从表中获取值。

我有一张像

这样的表格
        Employee  
EmployeeID       Salary  
001---------------10  
002---------------25  

...
还有像

这样的表格
         Salary  
LevelNo LowerLimit UpperLimit  
1--------01---------15  
2--------16---------30  

我需要从Employee表中获取薪水并显示级别编号。我可以得到最低的显示,但不是其余的。我是新手,所以任何帮助都非常感谢。到目前为止,这是我使用Sqlite3的代码:

SELECT EmployeeID, Salary, LevelNO  
FROM Employee_T, SalaryLevel_T  
WHERE LevelNO = (Salary < UpperLimit AND Salary > LowerLimit);  

这只显示一个EmployeeIDSalaryLevelNO,它是最低的。

1 个答案:

答案 0 :(得分:3)

SELECT e.EmployeeID, e.Salary, s.LevelNO
FROM Employee_T e
JOIN SalaryLevel_T s ON e.Salary between s.LowerLimit and s.UpperLimit

如果您不想使用between,可以

JOIN SalaryLevel_T s ON e.Salary >= s.LowerLimit and e.Salary <= s.UpperLimit