【发布时间】:2015-03-26 19:32:41
【问题描述】:
特定供应商的这种产品排序顺序存储在一个表中。
例如:
ITEM_ID SORT_ORDER
100 1
101 2
105 3
106 4
108 5
等等……
现在,如果供应商想要在其网页的第 5 位显示第一个产品 (100),他可以在最后执行此操作,为了显示他想要的结果,我们需要更改下表中的排序值,如下所示。
所有项目的新排序顺序值被更新,新表采用如下形式:
ITEM_ID SORT_ORDER
100 5
101 1
105 2
106 3
108 4
等等……
据观察,要更改 1 个产品的排序顺序,我们必须为该特定供应商更新此表的所有行。 这是一项昂贵的工作。
我们正在寻找解决这个问题的方法,以最优化和最具成本效益的方法维护该供应商的产品排序顺序。
以任何其他方式保持排序顺序的任何替代解决方案
【问题讨论】:
-
“代价高昂的练习”来更新几行?您的典型供应商有多少物品?
-
@JeffreyKemp 在最坏情况下大约缺少 1 个,平均情况下 1000+
-
缺少?无论如何,如果你的平均数是 1000,那就太小了。
-
主要问题是当 1 个缺货供应商在他们的订单中做了小的改动(假设每个供应商有 1000 件产品),那么我们需要更新 1 个缺货* 1000,这是非常糟糕的。
-
10 万 = 10 万 source=en.wikipedia.org/wiki/Lakh