Výukový program MySQL

MySQL HOME Úvod do MySQL MySQL RDBMS

MySQL SQL

MySQL SQL MySQL SELECT MySQL KDE MySQL A NEBO NE MySQL OBJEDNAT PODLE MySQL INSERT INTO MySQL hodnoty NULL AKTUALIZACE MySQL MySQL DELETE LIMIT MySQL MySQL MIN a MAX MySQL COUNT, AVG, SUM MySQL LIKE Zástupné znaky MySQL MySQL IN MySQL MEZI Aliasy MySQL Připojení k MySQL VNITŘNÍ PŘIPOJENÍ k MySQL MySQL LEFT JOIN MySQL SPRÁVNÉ PŘIPOJENÍ SE MySQL CROSS JOIN Vlastní připojení k MySQL MySQL UNION MySQL GROUP BY MySQL MÁME MySQL EXISTUJE MySQL JAKÉKOLI, VŠECHNY MySQL INSERT SELECT CASE MySQL Funkce MySQL Null Komentáře k MySQL Operátoři MySQL

Databáze MySQL

MySQL Vytvořte DB MySQL Drop DB Vytvořit tabulku MySQL MySQL Drop Table MySQL Alter Table Omezení MySQL MySQL není Null Unikátní MySQL Primární klíč MySQL cizí klíč MySQL Kontrola MySQL Výchozí MySQL Vytvořit index MySQL Automatický přírůstek MySQL Data MySQL Zobrazení MySQL

Reference MySQL

MySQL datové typy Funkce MySQL

Příklady MySQL

Příklady MySQL MySQL kvíz Cvičení MySQL

Příkaz MySQL INSERT INTO SELECT


Příkaz MySQL INSERT INTO SELECT

Příkaz INSERT INTO SELECTzkopíruje data z jedné tabulky a vloží je do jiné tabulky.

Příkaz INSERT INTO SELECTvyžaduje, aby se datové typy ve zdrojových a cílových tabulkách shodovaly.

Poznámka: Stávající záznamy v cílové tabulce nejsou ovlivněny.

INSERT INTO SELECT Syntaxe

Zkopírujte všechny sloupce z jedné tabulky do jiné tabulky:

INSERT INTO table2
SELECT * FROM table1
WHERE condition;

Zkopírujte pouze některé sloupce z jedné tabulky do jiné tabulky:

INSERT INTO table2 (column1, column2, column3, ...)
SELECT column1, column2, column3, ...
FROM table1
WHERE condition;

Demo databáze

V tomto tutoriálu použijeme známou ukázkovou databázi Northwind.

Níže je uveden výběr z tabulky „Zákazníci“:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico

A výběr z tabulky "Dodavatelé":

SupplierID SupplierName ContactName Address City Postal Code Country
1 Exotic Liquid Charlotte Cooper 49 Gilbert St. Londona EC1 4SD UK
2 New Orleans Cajun Delights Shelley Burke P.O. Box 78934 New Orleans 70117 USA
3 Grandma Kelly's Homestead Regina Murphy 707 Oxford Rd. Ann Arbor 48104 USA


Příklady MySQL INSERT INTO SELECT

Následující příkaz SQL zkopíruje "Dodavatele" do "Zákazníci" (sloupce, které nejsou vyplněny daty, budou obsahovat NULL):

Příklad

INSERT INTO Customers (CustomerName, City, Country)
SELECT SupplierName, City, Country FROM Suppliers;

Následující příkaz SQL zkopíruje „Dodavatele“ do „Zákazníci“ (vyplňte všechny sloupce):

Příklad

INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
SELECT SupplierName, ContactName, Address, City, PostalCode, Country FROM Suppliers;

Následující příkaz SQL zkopíruje do "Zákazníků" pouze německé dodavatele:

Příklad

INSERT INTO Customers (CustomerName, City, Country)
SELECT SupplierName, City, Country FROM Suppliers
WHERE Country='Germany';