A表
order_id–item–sku
00001–0001-00–abcd
00001–0001-00–bcde
00001–0002-00–cdef
00002–0003-00–asff
B表
order_id–item_list–sku_list
00001
00002
本人想把A表的相应内容,组合更新到B表
本人想要的结果:
B表
order_id–item_list–sku_list
00001–0001-00,0002-00–abcd,bcde,cdef
00002–0003-00–asff
组合之后,重复的删除,例如:0001-00有2个,只留一个,问一下语句怎么写呢?
order_id–item–sku
00001–0001-00–abcd
00001–0001-00–bcde
00001–0002-00–cdef
00002–0003-00–asff
B表
order_id–item_list–sku_list
00001
00002
本人想把A表的相应内容,组合更新到B表
本人想要的结果:
B表
order_id–item_list–sku_list
00001–0001-00,0002-00–abcd,bcde,cdef
00002–0003-00–asff
组合之后,重复的删除,例如:0001-00有2个,只留一个,问一下语句怎么写呢?
解决方案
20
UPDATE b, (SELECT order_id, GROUP_CONCAT(DISTINCT item) AS item, GROUP_CONCAT(DISTINCT sku) AS sku FROM a GROUP BY order_id) c SET b.item_list = c.item, b.sku_list = c.sku WHERE b.order_id = c.order_id