SQL语句实现近似匹配

来源:百度知道 编辑:UC知道 时间:2024/09/21 18:16:58
我在做一个搜索,数据库中每一项有5个属性,取值“0,1,2”
现在根据用户的需要给出5个“0,1,2”这样的数
要从数据库中找出最接近的5项显示给用户
每个属性的权重是一样的
请各位大虾帮帮忙!!!

aa bb cc dd ee
0 0 0 0 2
2 1 0 1 2
0 2 1 0 2
2 1 0 1 0
2 0 1 0 2
...
比如说我现在输入 2,1,0,0,0
找出最接近的5项
我想要的是近似匹配,不是绝对的,用户输入的5项我们数据不一定有,所以就要找一个最接近的,求5项的差的绝对值最小是可以的,可这个用具体SQL语句怎么做?

求5项的差的绝对值最小行吗?

怎么样才算最近呢?又没有一个序号排列,试试这样

select top 5 * from table where aa = 2 and bb = 1 and cc = 0 and dd = 0 and ee = 0

最近是指什么?