MySql Объедение данных их нескольких таблиц в одну

15.03.2019

Иногда нужно физически объединить (скопировать) данные из нескольких таблиц. Это можно сделать так:

 
INSERT INTO `tbl_items_all` SELECT * FROM `tbl_items1`;

Но есть проблема - если таблиц несколько, то уникальные поля, обычно это ID, начнут конфликтовать.

Самый простой, для меня, вариант, это создать в новой таблице поле, например, id_old, а в таблицах которые будем копировать временно переименовать поле id, в id_old.

 
INSERT INTO `tbl_items_all` SELECT '0' AS id, t.* FROM `tbl_items1` AS t


Категории: SQL
Яндекс.Метрика