MySQL中多个值的最佳匹配
从MySQL中的多个值和列中查找最佳匹配 数据库:MySQL中多个值的最佳匹配,mysql,Mysql,从MySQL中的多个值和列中查找最佳匹配 数据库: id star point price 1 12 15 16 2 9 15 16 3 18 10 12 Find与此非常接近 star point price 10 15 14 结果 id: 2 你需要一个距离度量。但是如果您有一个,那么您可以只使用orderby和limit。因此,如果使用欧几里德度量: select t.*
id star point price
1 12 15 16
2 9 15 16
3 18 10 12
Find与此非常接近
star point price
10 15 14
结果
id: 2
你需要一个距离度量。但是如果您有一个,那么您可以只使用
orderby
和limit
。因此,如果使用欧几里德度量:
select t.*
from t
order by pow(star - 10, 2) + pow(point - 15, 2) + pow(price - 14, 2)
limit 1;
注:按欧几里德度量排序时不需要平方根。a)到目前为止您尝试了什么?b) “最佳匹配”到底是什么意思?例如,星号列是否比价格更重要?我只尝试了1个值。但当我现在需要检查多个值的最佳匹配时,我迷失了方向。不知道一个是否比另一个更重要。需要想想它的甜蜜!如果数字高于最佳匹配,这也会找到关闭数字吗?@user2673664。对您没有指定需要相似性的规则,而欧几里德度量只是基于值之间的差异。