我无法让它发挥作用。
请原谅我的英语。
这就是我想要实现的目标:当您输入一组测量值,例如长度为300mm,高度为400mm,宽度为55mm时,我希望与这些测量值最接近的匹配,例如前3位?因此,如果另一个产品有这些测量长度310毫米高度410毫米宽度60毫米我希望该程序显示该产品,因为它接近原始测量。我的数据库有300多种不同的测量产品。我希望程序能够显示产品名称和产品尺寸。
对不起,如果这太模糊了。
答案 0 :(得分:1)
这不是编码而是数学问题,因为它完全取决于如何定义'关闭'
一个非常简单的例子可以简单地说:
添加原件的长度,高度和宽度,对每件产品执行相同操作,并显示与总数差异最小的产品。
或者,如果总差额不高于原始总数的10%,则只能显示。
或者您可以使用与上述相同的技术,但是对于每个属性:显示每个长度,高度和宽度的差异低于原始属性的10%的产品(或第一个产品)。
那里有非常复杂的数学模型,试图“接近”。或者最小化差异'。
如果没有提供进一步的详细信息,您将无法在此获得答案。
请不要问任何数学但编程问题。
答案 1 :(得分:0)
要添加到LBA的答案,您的最佳方法是通过音量差异或l / w / h差异。如果您希望获得最接近的匹配,则需要使用排序而不是条件。如果您不关心形状不同,则计算出体积(whl)并按体积差异创建排序。如果你关心形状,那么你需要分别对宽度,高度和长度这样做......尽管你仍然应该使用某种形式的条件,这样如果最接近的匹配远离主题尺寸那么你就不会得到任何结果......祝你好运
答案 2 :(得分:-1)
这样的东西?
SELECT * FROM `table`
WHERE `column_length` <= length_var AND `column_width` <= width_var AND `column_height` <= height_var
ORDER BY `product_id` ASC
LIMIT 3
这仅显示您所选测量值及以下的前3位。而且我不确定语法中是否有错误,但是你得到了流程