我有一个包含产品配件的专栏,如下例所示:
表格1
ProductID accessories
1 2,3
2 1,4,5
3
4 1
5 2
这意味着对于 PRODUCT 2,它的配件产品 ID 为 1,4 和 5
我有下面的最终表2,看起来像这样
表2
GRP ProductID accessories
a 2
b 3
c 1
d 4
e 5
所以实际上如果使用 UPDATE 它会是这样的
表2
UPDATE table t2
INNER JOIN table1 t1
On t2.ProductID = t1.ProductID
set t2.accessories = t1.accessories
GRP ProductID accessories
a 2 1,4,5
b 3
c 1 2,3
d 4 1
e 5 2
但我想根据 t2.ProductID 用 GRP 字符更改 t2.accessories 中的 productID,以便最终表看起来像这样。
表2
GRP ProductID accessories
a 2 c,d,e
b 3
c 1 a,b
d 4 c
e 5 a
我真的很困惑如何正确地做到这一点我能够使用 php 代码来处理这个问题,但是这需要很长时间,因为我有 100k 产品因此我更喜欢使用一些 group_concat 或 concat_ws 来处理这个
并且一些 t2.accessories 可能已经被存储,因此它应该是不同的值,所以 table2 上没有重复的 t2.accessories