sammanfattning: i den här handledningen lär du dig hur du använder Oracle INSERT INTO SELECT
– satsen för att infoga data i en tabell från resultatet av SELECT
– satsen.
översikt över Oracle INSERT I SELECT statement
Ibland vill du välja data från en tabell och infoga den i en annan tabell., För att göra det använder du OracleINSERT INTO SELECT
– satsen enligt följande:
OracleINSERT INTO SELECT
– satsen kräver datatypen för källtabellerna och måltabellerna.
om du vill kopiera alla rader från källtabellen till måltabellen tar du bort klausulen WHERE
. Annars kan du ange vilka rader från källtabellen som ska kopieras till måltabellen.,
Oracle INSERT I SELECT examples
A) infoga alla säljdata exempel
låt oss skapa en tabell som hetersales
för demonstrationen.,
följande uttalande infogar försäljningssammanfattning från tabellenorders
ochorder_items
I tabellensales
:
följande uttalande hämtar data från tabellensales
för att verifiera infoga:
b) infoga partiella försäljningsdata exempel
anta att du bara vill kopiera försäljningssammanfattningsdata under 2017 till en ny tabell., För att göra det skapar du först en ny tabell med namnet sales_2017
enligt följande:
villkoret i WHERE
säkerställer att data från tabellen sales
inte kopieras till tabellen sales_2017
.,
För det andra, använd Oracle INSERT INTO SELECT
med en WHERE
– klausul för att kopiera försäljningsdata för 2017 till tabellen sales_2017
:
i det här exemplet angav vi inte kolumnlistan i klausulen INSERT INTO
eftersom resultatet av SELECT
– satsen har de värden som motsvarar kolumnerna i tabellen sales_2017
. Dessutom har vi lagt till ett mer villkor i WHERE
– klausulen i SELECT
– satsen för att bara hämta försäljningsdata under 2017.,
följande fråga väljer Alla data från tabellensales_2017
:
C) infoga partiella data och bokstavligt värde exempel
Antag att du vill skicka e-post till alla kunder för att meddela nya produkter. För att göra det, du kan kopiera kunddata till en separat tabell och spåra e-post sändningsstatus.,
skapa först en ny tabell med namnet customer_lists
enligt följande:
För det andra, kopiera data från tabellen contacts
till tabellen customer_lists
:
i det här exemplet, förutom att hämta data från tabellen customer_lists
:
i det här exemplet id = ”af82300693” >
tabell, vi använde också bokstavligt 0 som värde för kolumnen sent
.,
följande fråga hämtar data från tabellen customer_lists
:
Observera att det här exemplet bara är för demonstration, du kan lägga till DEFAULT 0
I tabellen
iv id=”definition av kolumnen sent
.
i den här handledningen har du lärt dig hur du använder OracleINSERT INTO SELECT
– satsen för att infoga data i en tabell från resultatet av en fråga.
- var den här handledningen till hjälp?
- YesNo