我注意到,所有产品的数量并不等于home类别中的产品数量。这是因为在产品添加过程中,这个最大的父类别并不总是被选中。因此,有些产品属于home,而另一些则不属于。
虽然我需要为类别home页面显示正确的产品数量,但我在数据库中查找的是包含类别但在ps_product或ps_product_lang中找不到的列。
一个sql查询背后的想法是什么,它可以大量修改数据库中的适当字段,以便我的所有产品都属于home类别。
我们很感谢你平时的帮助。谢谢。
编辑:我发现数据库中的表是ps_category_product。这是唯一的吗?
这张桌子是这样的:
+-------------+------------+----------+
| id_category | id_product | position |
+-------------+------------+----------+
| 11 | 1 | 1 |
| 11 | 2 | 2 |
| 11 | 10 | 3 |
+-------------+------------+----------+我需要创建x行(x=,产品的数量)。每一行都有id_category=1和id_product=产品id和position= position++。是最好的办法吗?
关于如何在sql中实现它,有帮助吗?
再次感谢。
发布于 2014-06-24 19:24:17
您可以使用一个简单的SQL查询将每个产品分配给Home类别:
INSERT IGNORE INTO ps_category_product SELECT 2, id_product, 0 FROM ps_product2通常是Home类别的id_category值,0是position。
如果您想要唯一的position值,那么您需要一个更复杂的查询:
INSERT IGNORE INTO ps_category_product SELECT 2, id_product, ((SELECT MAX(position) FROM ps_category_product WHERE id_category = 2) + (@inc := @inc + 1)) FROM ps_product INNER JOIN (SELECT @inc := 0) AS ihttps://stackoverflow.com/questions/24389229
复制相似问题