gpt4 book ai didi

mysql - 如何在 mysql 中重新计算 prestashop 类别表中的位置

转载 作者:行者123 更新时间:2023-11-30 22:20:52 24 4
gpt4 key购买 nike

我在 prestashop 类别表中重新计算位置(位置、nleft 和 nright)时遇到问题。 (这次位置、nleft 和 nright 列的所有值为零)。我有 2 个数据库 arggep 和 arggep2,我想同步类别表并重新计算位置。请帮助我只写选择更新或插入查询。

SELECT honnan.`id_category`, honnan.`id_parent`, '1', honnan.`level_depth`, ??????????????`nleft`, ?????????`nright`, honnan.`active`, honnan.`date_add`, NOW(), ???????????`position`
FROM arggep2.ps_category hova RIGHT JOIN arggep.category honnan ON hova.`id_category`=honnan.`id_category`
WHERE hova.`id_category` IS NULL

最佳答案

我解决了

SET @pos=0;
SET @pid=-1;
INERT INTO ".$this->hova."category (`id_category`, `id_parent`, `id_shop_default`, `level_depth`, `nleft`, `nright`, `active`, `date_add`, `date_upd`, `position`) VALUES
SELECT honnan.`id_category`, honnan.`id_parent`, honnan.`id_shop_default`, honnan.`level_depth`, honnan.`nleft`, honnan.`nright`, honnan.`active`, honnan.`date_add`, NOW(), honnan.`position_recalc`
FROM (
SELECT b.`id_category`, b.`id_parent`, b.`id_shop_default`, b.`level_depth`, b.`nleft`, b.`nright`, b.`active`, b.`date_add`, @pos:=IF(@pid=b.`id_parent`, @pos+1, 0) AS position_recalc, @pid:=b.`id_parent` FROM ".$this->honnan."`category` b ORDER by b.`id_parent` ) honnan RIGHT JOIN ".$this->honnan."category honnan ON hova.`id_category`=honnan.`id_category` WHERE hova.`id_category` IS NULL;

关于mysql - 如何在 mysql 中重新计算 prestashop 类别表中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36661760/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com