SQL Server INSERT INTO SELECT

Resume: i denne vejledning lærer du, hvordan du bruger SQL Server INSERT INTO SELECT sætning for at tilføje data fra andre tabeller til en tabel.

Introduktion til SQL Server INSERT INTO SELECT-sætning

For at indsætte data fra andre tabeller i en tabel bruger du følgende SQL Server INSERT INTO SELECT udsagn:

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

I denne syntaks indsætter udsagnet rækker returneret af query i target_table.

query er en hvilken som helst gyldig SELECT udsagn, der henter data fra andre tabeller. Den skal returnere de værdier, der svarer til de kolonner, der er angivet i column_list.

TOP -delens del er valgfri. Det giver dig mulighed for at specificere antallet af rækker, der returneres af den forespørgsel, der skal indsættes i måltabellen. Hvis du bruger indstillingen PERCENT, indsætter udsagnet i stedet procentdelen af rækker. Bemærk, at det er en god praksis at altid bruge TOP -klausulen med ORDER BY -klausulen.

SQL Server INSERT INTO VÆLG eksempler

Lad os oprette en tabel med navnet addresses til demonstrationen:

1) Indsæt alle rækker fra et andet tabeleksempel

Følgende udsagn indsætter alle adresser fra customers -tabellen i addresses -tabellen:

For at bekræfte indsætningen bruger du følgende forespørgsel:

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

Her er resultatet:

2) Indsæt nogle rækker fra et andet tabeleksempel

Nogle gange skal du bare indsætte nogle rækker fra en anden tabel til en tabel. I dette tilfælde begrænser du antallet af rækker, der returneres fra forespørgslen ved hjælp af betingelser i WHERE -klausulen.

Følgende udsagn tilføjer adresserne til de gemte butikker i Santa Cruz og Baldwin til addresses -tabellen:

SQL Serveren returnerede følgende meddelelse, der angiver, at to rækker er indsat med succes.

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

3) Indsæt det øverste N af rækker

Først, du bruger følgende udsagn til at slette alle rækker fra addresses -tabellen:

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

For det andet for at indsætte toppen 10 kunder sorteret efter deres fornavne og efternavne, bruger du INSERT TOP INTO SELECT udsagn som følger:

SQL Server returnerede følgende meddelelse, der viser, at der er indsat ti rækker med succes.

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

4) Indsæt den øverste procentdel af rækker

I stedet for at bruge et absolut antal rækker, kan du en indsæt et procent antal rækker i en tabel.

Afkort først alle rækker fra addresses -tabellen:

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

For det andet skal du indsætte to øverste procent af rækker fra customers -tabellen sorteret efter fornavne og efternavne i addresses tabel:

SQL Server udsendte følgende meddelelse om, at 145 rækker er blevet indsat med succes.

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

I denne vejledning, du har lært, hvordan man bruger SQL Server INSERT INTO SELECT -sætningen til at indsætte rækker fra andre tabeller i en tabel.

Leave a Reply

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *