我有一张这样的桌子:
TableTest
Col1 Col2 Col3 Col4
5 6 7 8
12 6 5 6
2 3.5 6 1
我想用这个找到最接近的行:4,5.75,7.2,6 一个人可以找到它(第1行是答案),但是我如何编写查询以供计算机找到它?
答案 0 :(得分:1)
我将“最接近”解释为“在表值和提供的表值之间具有最小绝对差之和”:
select top 1 col1,col2,col3,col4
from yourtable
order by abs(col1-4)+abs(col2-5.75)+abs(col3-7.2)+abs(col4-6) asc