PrestaShop中如何用MySQL遍历所有id_product批量插入ps_category_product表
问题分析
你原来的语句报错核心原因是嵌套的(SELECT id_product from ps_product)子查询会返回多条产品ID记录,无法作为单值填入每一行的第二个字段,完全不需要额外嵌套子查询。
正确写法
直接从ps_product表取每行的id_product字段即可,调整后语句如下:
INSERT IGNORE INTO ps_category_product SELECT 1184, id_product, 0 FROM ps_product;
语句说明
这条语句会遍历ps_product表的所有行,自动为每一个产品生成「分类ID 1184 + 对应产品ID + 排序值0」的配对数据插入目标表,INSERT IGNORE配置会自动跳过已经存在的配对记录,不会触发唯一键冲突报错。
内容的提问来源于stack exchange,提问作者RandomFellow
相关产品推荐
相关产品推荐

