Data můžete snadno zkopírovat do nové tabulky v MySQL pomocí SELECT INTO. To vám pomůže rychle vytvořit dočasné tabulky.
Příkaz SELECT INTO zkopíruje data z jedné tabulky a vloží je do nové tabulky. Příkaz SELECT INTO vybere data z jedné tabulky a vloží je do nové tabulky.
SQL SELECT INTO syntaxe
Zkopírujte všechny sloupce do nové tabulky ve stejné databázi:
SELECT * INTO new_table FROM table_name;
Zkopírujte všechny sloupce do nové tabulky v jiné databázi:
SELECT * INTO new_table IN database_name FROM table_name;
Zkopírujte pouze požadované sloupce do nové tabulky ve stejné databázi:
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;
Poznámka
Nová tabulka bude vytvořena s názvy a typy sloupců, jak jsou definovány v příkazu SELECT. Pomocí klauzule AS můžete použít nové názvy.
Příklady SQL SELECT INTO
Vytvořte záložní kopii Customers:
SELECT * INTO Users_Backup FROM Users;
Pomocí klauzule IN zkopírujte tabulku do jiné databáze:
SELECT * INTO Users_Backup IN 'Backup_database' FROM Users;
Do nové tabulky zkopírujte pouze několik sloupců:
SELECT User_Name, User_Contact INTO Users_Backup FROM Users;
Do nové tabulky zkopírujte pouze americké zákazníky:
SELECT * INTO Users_Backup FROM Users WHERE Country='USA';
Zkopírujte data z více než jedné tabulky do nové tabulky:
SELECT Users.User_Name, Orders.Order_ID INTO Users_Order_Backup FROM Users LEFT JOIN Orders ON Users.User_ID=Orders.User_ID;
Tip :Příkaz SELECT INTO lze také použít k vytvoření nové prázdné tabulky pomocí schématu jiné tabulky. Stačí přidat klauzuli WHERE, která způsobí, že dotaz nevrátí žádná data: