Можете лесно да копирате данни в нова таблица в MySQL, като използвате SELECT INTO. Това ви помага бързо да създавате временни таблици.
Инструкцията SELECT INTO копира данни от една таблица и ги вмъква в нова таблица. Инструкцията SELECT INTO избира данни от една таблица и ги вмъква в нова таблица.
SQL SELECT INTO Синтаксис
Копирайте всички колони в нова таблица в същата база данни:
SELECT * INTO new_table FROM table_name;
Копирайте всички колони в нова таблица в различна база данни:
SELECT * INTO new_table IN database_name FROM table_name;
Копирайте само колоните, които искаме, в новата таблица в същата база данни:
SELECT column_name1,column_name2,.. INTO new_table FROM table_name;
SELECT column_name1,column_name2,.. INTO new_table IN database_name FROM table_name;
Забележка
Новата таблица ще бъде създадена с имената на колони и типовете, както са дефинирани в оператора SELECT. Можете да приложите нови имена с помощта на клаузата AS.
SQL SELECT INTO Примери
Създайте резервно копие на Клиенти:
SELECT * INTO Users_Backup FROM Users;
Използвайте клаузата IN, за да копирате таблицата в друга база данни:
SELECT * INTO Users_Backup IN 'Backup_database' FROM Users;
Копирайте само няколко колони в новата таблица:
SELECT User_Name, User_Contact INTO Users_Backup FROM Users;
Копирайте само американските клиенти в новата таблица:
SELECT * INTO Users_Backup FROM Users WHERE Country='USA';
Копирайте данни от повече от една таблица в новата таблица:
SELECT Users.User_Name, Orders.Order_ID INTO Users_Order_Backup FROM Users LEFT JOIN Orders ON Users.User_ID=Orders.User_ID;
Съвет :Инструкцията SELECT INTO може да се използва и за създаване на нова празна таблица, използвайки схемата на друга. Просто добавете клауза WHERE, която кара заявката да не връща данни: