在最受欢迎的产品之后进行排序保持相关性

时间:2015-12-23 08:22:45

标签: php mysql sorting math

我正在与电子商务合作,我们正在处理接受我们自己的订单。

我们目前正在重新编码订单拣货系统,当我们这样做时,我也在考虑重新定位(优化)所有产品,并按顺序对它们进行排序,以便更快地选择订单。尽可能早地保留最畅销的产品,但仍然保留人们经常一起购买的产品。

我可能会销售100件product_1,90件产品_2等等,但只有10件产品_3。但是所有10个product_3都与product_1一起购买,因此我希望它们更接近彼此。

我不是在寻找一个全面的SQL解决方案。因为我可能需要首先从大多数销售到最少的所有产品,然后使用PHP移动彼此相关的产品。

有人对如何计算这个有任何建议吗?

我有两个可用于此的SQL表。

的MySQL>解释order_products;

+-------------------+-----------------------+------+-----+---------+----------------+
| Field             | Type                  | Null | Key | Default | Extra          |
+-------------------+-----------------------+------+-----+---------+----------------+
| id                | int(10) unsigned      | NO   | PRI | NULL    | auto_increment |
| order_id          | int(10) unsigned      | NO   | MUL | NULL    |                |
| product_id        | int(10) unsigned      | NO   | MUL | NULL    |                |
| quantity          | int(10) unsigned      | NO   |     | NULL    |                |
| ...
+-------------------+-----------------------+------+-----+---------+----------------+

的MySQL>解释订单;

+----------------------+-----------------------+------+-----+---------------------+----------------+
| Field                | Type                  | Null | Key | Default             | Extra          |
+----------------------+-----------------------+------+-----+---------------------+----------------+
| id                   | int(10) unsigned      | NO   | PRI | NULL                | auto_increment |
| ...
+----------------------+-----------------------+------+-----+---------------------+----------------+

1 个答案:

答案 0 :(得分:0)

有很多方法:我建议其中一个。

在表格product_sold_count中添加字段order_products。 通过这种方式,您可以跟踪计数,即产品销售的次数。如果产品销售数量更多意味着它更受欢迎。然后

只需应用order by product_sold_count ASC;

它会在你问的时候给你结果。