Основное отличие создания таблиц с помощью LIKE и SELECT в MySQL заключается в том, что каждый из этих подходов создаёт разные объекты:
- CREATE TABLE … LIKE создаёт пустую таблицу на основе определения другой таблицы. www.dbvis.com pencilprogrammer.com При этом сохраняются атрибуты столбцов, первичный ключ, индексы и другие объекты исходной таблицы. www.dbvis.com pencilprogrammer.com
- CREATE TABLE … SELECT создаёт новую таблицу на основе выбранных столбцов другой таблицы, включая их данные. www.dbvis.com При этом не сохраняется информация о первичных ключах и индексах. www.dbvis.com
Таким образом, CREATE TABLE … LIKE позволяет копировать определение таблицы со всеми её характеристиками, но без данных, а CREATE TABLE … SELECT — копировать имена столбцов и данные из одной таблицы в другую. www.dbvis.com