У меня есть одна таблица в mysql, которая хранит пункты меню. Структура приведена ниже
Таблица: menu_list_hed
id menu_name shop_id menu category -------------------------------------------- 1 Breakfast 12 Veg 2 Dinner 12 Veg .... Many more
Теперь у меня есть другой магазин, в котором есть такое же меню, но shop_id
(13) отличается. Как я могу скопировать те же значения снова и сделать таблицу выглядеть так, как показано ниже
id menu_name shop_id menu category -------------------------------------------- 1 Breakfast 12 Veg 2 Dinner 12 Veg .... Many more 25 Breakfast 13 Veg 26 Dinner 13 Veg .... Many more
Я пытался экспортировать SQL из phpmyadmin, но это займет много времени, так как мне нужно вручную изменить shop_id
для каждого оператора SQL.
Вы можете использовать insert с select и предоставить свой shop_id в select statement
INSERT INTO menu_list_hed (`menu_name`, `shop_id`, `menu category`) select `menu_name`, '13' AS `shop_id`, `menu category` from menu_list_hed where shop_id = 12 ;
Demo
Попробуйте следующее: у вас есть дополнительный запрос к той же таблице, который соответствует shop_id. Надеюсь, что эта структура поможет вам
INSERT INTO shop (id, menu_name, shop_id, «категория меню»)
SELECT MAX (id) + 1, menu_name,
( SELECT MAX ((shop_id)) +1 FROM menu_list_hed h1, где h1.menu_name = h2.menu_name),menu category
)
FROM menu_list_hed h2;
Напишите такой запрос
INSERT INTO destination_table ( Field_1, Field_2, Field_3) SELECT Field_1, Field_2, Field_3 FROM source_table;