我将旧数据库转移到VirtueMart(Joomla Component)的新数据库,
在数据库中,有一个表指示媒体(图像)应对应的位置(它们指向的产品),并且媒体按1,2,3,4等进行排序。1是该媒体的主要图像。产品。
当我将旧数据库转移到新数据库时,没有像订购这样的字段。
红色方框错误地显示了顺序(1,1,1,1),
并且绿色块正确显示了它,我需要找出一种使过程自动化的方法,因为数据库中有5000多个条目。
我努力通过PHP自动化流程,但我不知道如果行具有相同的值并更新订单的值,我将如何比较
如果有任何可行的方法,将非常感谢您的帮助。
问候。
最佳答案
您可以为此使用变量:
set @vpi := -1;
set @rn := 0;
update VirtueMart vm
set ordering = (@rn := if(@vpi = virtualmart_product_id, @rn + 1,
if(@vpi := virtualmart_product_id, 1, 1)
)
)
order by virtualmart_product_id, id;