当列值不相等时,我想检索最接近的较低薪酬值。
例如:10 yearsOfService应该等于650.00的值; 14年的服务将等于下面激励表中的值840.00,
ID Pay yearsOfService
1 125.00 0
2 156.00 2
3 188.00 3
4 206.00 4
5 650.00 6
6 840.00 14
7 585.00 22
8 495.00 23
9 385.00 24
10 250.00 25
我尝试了几种不同的方法;包括:
SELECT TOP 1 (pay) as incentivePay
FROM incentive
WHERE yearsOfService = '10'
这只适用于匹配的yearsOfService。
用10年的服务:
RESULTSET = [1 650.00]
有什么想法吗?
答案 0 :(得分:3)
请尝试:
SELECT TOP 1 (pay) as incentivePay
FROM incentive
WHERE yearsOfService <= '10'
ORDER BY yearsOfService desc