我需要在表中找到一个与给定值最接近的值。
所以,例如,值:
40, 42, 45, 48, 51, 53, 55, 58
选择最近的值为50.显然在上面的例子中它将是51.但是,在这个系列中:
40, 42, 45, 48, 53, 55, 58, 60
较近的值是48。
如果我有52,52已经可用,所以我需要选择。
我尝试使用数字DESC从表顺序中选择Top Top(1),但它获取了多个值。
答案 0 :(得分:2)
您可以使用abs()
:
select top 1 value
from t
order by abs(51 - value);