У меня есть 2 таблицы, как показано ниже.Они идентичны, за исключением имени таблицы.
tbl_item_color_exp
>>item_color_ID
>>color_ID
>>item_ID
tbl_item_color_live
>>item_color_ID
>>color_ID
>>item_ID
Я хотел скопировать несколько строк из таблицы tbl_item_color_live в таблицу tbl_item_color_exp.Я могу выполнить копирование точного столбца и строки следующим SQL-кодом ниже:
INSERT INTO tbl_item_color_exp
SELECT * FROM tbl_item_color_live WHERE item_ID = $oldID
Но я не хочу создавать реплицированный первичный ключ item_color_ID
и хочу обновить все строки, скопированные из столбца item_ID, вновая переменная, $newID
.Общая идея состоит в том, чтобы скопировать все строки на основе $oldID
и обновить таблицу назначения с помощью &newID
, но с поддержкой столбца color_ID
с автоматически увеличенным первичным ключом item_color_ID
.
Я могу выполнить это с помощью нескольких запросов SQLно мне было интересно, возможно ли для меня сделать все более эффективно только одной строкой SQL?Надеюсь, мой вопрос понятен всем, спасибо.