我进行了搜索和搜索,但我认为我错过了一些东西。我想要完成的是将concat的结果保存在单个表中,其中多个行基于ID组合。
我的表只有3列: ID - Order_items_id - 自定义
ID是唯一的,但从长远来看无关紧要。
我想要完成的是使用相同的order_item_id
连接所有行。 concat仅适用于customizations
。
我的桌子的一个例子:
ID - order_item_id - customization
0 1231 19;1
1 1231 75;1
2 2345 10;5
我可以通过以下查询得到我的结果以显示我想要的方式:
SELECT `order_item_id`, group_concat(`customizations` separator ';')
FROM `ojs_order_ing_export`
GROUP BY `order_item_id`
ID - order_item_id - customization
0 1231 19;1;75;1
2 2345 10;5
现在我对如何在第3列中插入此查询的结果感到有些困惑,或者更新customization
列以保存concat查询的结果。
这样做的目的是将基于customization
的{{1}}中的所有数据分组到一行中,这样我就可以将order_item_id
列与另一个表一起加入。
提前谢谢。
答案 0 :(得分:0)
我不确定我是否完全理解你的目标,但看起来你应该像INSERT-SELECT
声明那样:
INSERT INTO my_new_table (order_item_id, order_item_customizations)
SELECT `order_item_id`, group_concat(`customizations` separator ';')
FROM `ojs_order_ing_export`
GROUP BY `order_item_id`
或者,例如
CREATE TABLE my_new_table
SELECT `order_item_id`, group_concat(`customizations` separator ';')
FROM `ojs_order_ing_export`
GROUP BY `order_item_id`
如果你想拥有相同的表,但使用"合并"值 - 只需交换原始表和新表。