假设我在 MySql 表中有以下内容:
在此表中,某些记录(子 1-7)的值可能相同或接近相同;就像比尔、布什和凯特的例子一样。 我想根据记录之间的相关性百分比对表进行排序。正如你所看到的,比尔和凯特几乎一模一样,其次是布什。该表应按以下顺序排序:Bill、Bush、Gate 等。该表包含 200 多条记录,其中许多记录具有几乎相同的值。 这如何在 php 中完成?有什么想法吗?
补充:查看回复后: 请注意两条记录:
22 + 45 + 67 + 87 + 37 + 54 + 63 = 375
45 + 65 + 35 + 45 + 66 + 60 + 59 = 375
加起来为 375,但它们并不相同。我不想要这样的情况。
最佳答案
尝试
select *
from your_table
order by abs(sub1 - avg(sub1)) +
abs(sub2 - avg(sub2)) +
abs(sub3 - avg(sub3)) +
abs(sub4 - avg(sub4)) +
abs(sub5 - avg(sub5)) +
abs(sub6 - avg(sub6)) +
abs(sub7 - avg(sub7)) +
关于php - 基于几乎相同的多列对 MySql/php 中的记录进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20420835/