SQL Server INSERT INTO SELECT (Svenska)

Sammanfattning: i den här självstudien lär du dig hur du använder SQL Server INSERT INTO SELECT uttalande för att lägga till data från andra tabeller i en tabell.

Introduktion till SQL Server INSERT INTO SELECT-uttalande

För att infoga data från andra tabeller i en tabell använder du följande SQL Server INSERT INTO SELECT uttalande:

Code language: SQL (Structured Query Language) (sql)

I denna syntax infogar uttalandet rader som returneras av query i target_table.

query är valfri SELECT uttalande som hämtar data från andra tabeller. Den måste returnera de värden som motsvarar de kolumner som anges i column_list.

TOP -satsdelen är frivillig. Det låter dig ange antalet rader som returneras av frågan som ska infogas i måltabellen. Om du använder alternativet PERCENT infogas i stället procentsatsen av rader. Observera att det är en bästa praxis att alltid använda TOP -satsen med ORDER BY -satsen.

SQL Server INSERT IN VÄLJ exempel

Låt oss skapa en tabell med namnet addresses för demonstrationen:

1) Infoga alla rader från ett annat tabellexempel

Följande uttalande infogar alla adresser från customers tabellen i addresses tabellen:

För att verifiera infoga använder du följande fråga:

Code language: SQL (Structured Query Language) (sql)

Här är resultatet:

2) Infoga några rader från ett annat tabellexempel

Ibland behöver du bara infoga några rader från ett annat bord till ett bord. I det här fallet begränsar du antalet rader som returneras från frågan genom att använda villkor i WHERE -satsen.

Följande uttalande lägger till adresserna till de butiker som finns i Santa Cruz och Baldwin till addresses -tabellen:

SQL Servern returnerade följande meddelande som indikerar att två rader har infogats framgångsrikt.

Code language: SQL (Structured Query Language) (sql)

3) Sätt in den övre N på raderna

Först, du använder följande uttalande för att radera alla rader från addresses tabellen:

Code language: SQL (Structured Query Language) (sql)

För det andra, för att infoga toppen 10 kunder sorterade efter deras förnamn och efternamn, du använder uttalandet INSERT TOP INTO SELECT:

SQL Server returnerade följande meddelande som visar att tio rader har infogats framgångsrikt.

Code language: SQL (Structured Query Language) (sql)

4) Infoga den högsta procentsatsen av rader

Istället för att använda ett absolut antal rader, en infoga ett procentantal av rader i en tabell.

Trunka först alla rader från addresses -tabellen:

Code language: SQL (Structured Query Language) (sql)

För det andra, infoga de två bästa raderna från customers -tabellen sorterade efter förnamn och efternamn i addresses tabell:

SQL Server skickade följande meddelande som indikerar att 145 rader har infogats framgångsrikt.

Code language: SQL (Structured Query Language) (sql)

I den här självstudien, du har lärt mig hur man använder SQL Server INSERT INTO SELECT uttalande för att infoga rader från andra tabeller i en tabell.

Leave a Reply

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *