INSERT INTO-sætningen i SQL bruges til at tilføje nye poster til en tabel i en database. Det er en grundlæggende kommando til dataindsættelse og bruges til at indsætte nye data i tabeller.
Syntaks
Der er to syntakser af INSERT INTO-sætninger afhængigt af kravene. De to syntakser er:
1. Kun værdier
Den første metode er kun at angive værdien af data, der skal indsættes uden kolonnenavnene.
INSERT INTO tabelnavn
VALUES (værdi1, værdi2, værdi);
Her,
- tabelnavn: navnet på bordet.
- værdi1, værdi2: værdi af første kolonne, anden kolonne,... for den nye post
2. Kolonnenavne og værdier begge dele
I den anden metode vil vi specificere både de kolonner, som vi vil udfylde, og deres tilsvarende værdier som vist nedenfor:
INDSÆT I tabelnavn (kolonne1, kolonne2, kolonne3)
VÆRDIER (værdi1, værdi2, værdi);
Her,
- tabelnavn: navnet på bordet.
- kolonne 1, kolonne 2..: navn på første kolonne, anden kolonne.
- værdi1, værdi2, værdi..: værdi af første kolonne, anden kolonne,... for den nye post
SQL INSERT INTO eksempler
Lad os se på nogle eksempler på INSERT INTO-sætning i SQL for at forstå det bedre.
Antag, at der er en elevdatabase, og vi vil tilføje værdier.
govinda
| ROLL_NO | NAVN | ADRESSE | TELEFON | ALDER |
|---|---|---|---|---|
| 1 | Vædder | Delhi | xxxxxxxxxxxx | 18 |
| 2 | RAMESH | GURGAON | xxxxxxxxxxxx | 18 |
| 3 | SUJIT | ROHTAK | xxxxxxxxxxxx | tyve |
| 4 | SURESH | ROHTAK | xxxxxxxxxxxx | 18 |
| 3 | SUJIT | ROHTAK | xxxxxxxxxxxx | tyve |
| 2 | RAMESH | GURGAON | xxxxxxxxxxxx | 18 |
Indsættelse af kun nye værdier ved hjælp af INSERT INTO eksempel
Hvis vi kun vil indsætte værdier, bruger vi følgende forespørgsel:
Forespørgsel:
INSERT INTO Student VALUES ('5','HARSH','WEST BENGAL', 'XXXXXXXXXX','19');> Produktion:
række objekter i java
Bordet Studerende vil nu se sådan ud:
| ROLL_NO | NAVN | ADRESSE | TELEFON | Alder |
|---|---|---|---|---|
| 1 | Vædder | Delhi | XXXXXXXXX | 18 |
| 2 | RAMESH | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | tyve |
| 4 | SURESH | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | tyve |
| 2 | RAMESH | GURGAON | XXXXXXXXX | 18 |
| 5 | BARSKE | VESTBENGAL | XXXXXXXXX | 19 |
Indsæt værdier til specificerede kolonner ved hjælp af INSERT INTO eksempel
Hvis vi ønsker at indsætte værdier i de angivne kolonner, bruger vi følgende forespørgsel:
Forespørgsel:
INSERT INTO Student (ROLL_NO, NAME, Age) VALUES ('5','PRATIK','19');> Produktion:
Bordet Studerende vil nu se sådan ud:
| ROLL_NO | NAVN | ADRESSE | TELEFON | Alder |
|---|---|---|---|---|
| 1 | Vædder | Delhi | XXXXXXXXX | 18 |
| 2 | RAMESH | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | tyve |
| 4 | SURESH | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | tyve |
| 2 | RAMESH | GURGAON | XXXXXXXXX | 18 |
| 5 | ØVE SIG | nul | nul | 19 |
Bemærk, at de kolonner, som værdierne ikke er angivet for, er udfyldt med null. Hvilke er standardværdierne for disse kolonner?
Indsæt flere rækker i en tabel ved hjælp af enkelt SQL-sætning
Du kan bruge den givne teknik til at indsætte flere rækker i en tabel i en enkelt forespørgsel. Dette sparer tid til at skrive forespørgsler og reducerer margenfejlen.
Syntaks:
INSERT INTO table_name(Column1,Column2,Column3,…….)
VÆRDIER (Værdi1, Værdi2, Værdi3,…..),
(Værdi1, Værdi2, Værdi3,…..),
(Værdi1, Værdi2, Værdi3,…..),
……………………….. ;
Hvor,
- tabelnavn: navnet på bordet.
Kolonne 1: navnet på den første kolonne, anden kolonne. - Værdier: Værdi1, Værdi2, Værdi3: værdien af den første kolonne, anden kolonne.
- For hver ny række, der er indsat, skal du angive flere værdilister, hvor hver liste er adskilt af ,. Hver liste over værdier svarer til værdier, der skal indsættes i hver ny række i tabellen. Værdier i den næste liste fortæller værdier, der skal indsættes i den næste række i tabellen.
Indsæt flere rækker i en tabel ved hjælp af enkelt SQL-sætning Eksempel:
Følgende SQL-sætning indsætter flere rækker i elevtabel.
css centrering af et billede
Forespørgsel:
INSERT INTO STUDENT (ID, NAME,AGE,GRADE,CITY) VALUES (1,'AMIT KUMAR',15,10,'DELHI'), (2,'GAURI RAO',18,12,'BANGALORE'), (3,'MANAV BHATT',17,11,'NEW DELHI'), (4,'RIYA KAPOOR',10,5,'UDAIPUR');>
Produktion:
Derfor vil STUDENT-tabellen se sådan ud:
| ID | NAVN | ALDER | KARAKTER | BY |
|---|---|---|---|---|
| 1 | AMIT KUMAR | femten | 10 | DELHI |
| 2 | GAURI RAO | 18 | 12 | BANGALORE |
| 3 | MANAV BHATT | 17 | elleve | NEW DELHI |
| 4 | RIYA KAPOOR | 10 | 5 | UDAIPUR |
S QL INDSÆT I SELECT
Det SQL INSERT INTO SELECT sætning bruges til at kopiere data fra en tabel og indsætte den i en anden tabel. Brugen af denne erklæring svarer til den af INSERT INTO-sætningen. Forskellen er, at SELECT erklæring bruges her til at vælge data fra en anden tabel. De forskellige måder at bruge INSERT INTO SELECT-sætningen på er vist nedenfor:
INSERT I SELECT Syntaks
Der er to syntakser til brug af INSERT INTO SELECT-sætning, afhængigt af dets brug.
Kopier alle kolonner og indsæt
Syntaksen for at bruge INSERT INTO SELECT-forespørgsel til at indsætte alle data fra en tabel til en anden tabel:
INSERT INTO first_table SELECT * FROM second_table;
Her,
- første_tabel: navn på første bord.
- anden_tabel: navnet på den anden tabel.
Vi har brugt SELECT-sætningen til at kopiere data fra en tabel og INSERT INTO-sætningen til at indsætte fra en anden tabel.
Kopier specifikke kolonner og indsæt
Syntaksen for at bruge INSERT INTO SELECT-forespørgsel til at indsætte specifikke data fra en tabel til en anden tabel:
abc med tal
INDSÆT I første_tabel(navne_på_kolonne1)
SELECT names_of_columns2 FROM second_table;
Her,
- første_tabel : navn på første tabel. second_table: navnet på den anden tabel.
- navne på kolonner 1: navn på kolonner adskilt af komma(,) for tabel 1.
- navne på kolonner2 : navn på kolonner adskilt af komma(,) for tabel 2.
Vi har brugt SELECT-sætningen til kun at kopiere dataene i de valgte kolonner fra den anden tabel og INSERT INTO-sætningen til at indsætte i den første tabel.
C opy Specifikke rækker og indsæt
Vi kan kopiere specifikke rækker fra en tabel for at indsætte i en anden tabel ved at bruge WHERE-sætningen med SELECT-sætningen. Vi skal angive passende betingelser i WHERE-sætningen for at vælge specifikke rækker.
Syntaksen for at bruge INSERT INTO SELECT-forespørgsel til at indsætte specifikke rækker fra tabel
INSERT INTO table1 SELECT * FROM table2 WHERE-tilstand;
Her,
- første_tabel : navn på første tabel.
- anden_tabel : navn på anden tabel.
- tilstand : betingelse for at vælge specifikke rækker.
SQL INSERT INTO SELECT eksempler
Lad os se på nogle eksempler på INSERT INTO SELECT-sætning for at forstå det bedre.
Antag, at der er en LateralStudent-database.
| ROLL_NO | NAVN | ADRESSE | TELEFON | Alder |
|---|---|---|---|---|
| 7 | SOUVIK | HYDERABAD | XXXXXXXXX | 18 |
| 8 | NIRAJ | NOIDA | XXXXXXXXX | 19 |
| 9 | SOMESH | ROHTAK | XXXXXXXXX | tyve |
Indsættelse af alle rækker og kolonner ved hjælp af INSERT INTO SELECT eksempel
Hvis vi kun vil indsætte værdier, bruger vi følgende forespørgsel:
java gør mens eksempel
Forespørgsel:
INSERT INTO Student SELECT * FROM LateralStudent;>
Produktion:
Denne forespørgsel vil indsætte alle data fra tabellen LateralStudent i tabellen Student. Tabellen Elev vil nu se således ud,
| ROLL_NO | NAVN | ADRESSE | TELEFON | Alder |
|---|---|---|---|---|
| 1 | Vædder | Delhi | XXXXXXXXX | 18 |
| 2 | RAMESH | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | tyve |
| 4 | SURESH | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | tyve |
| 2 | RAMESH | GURGAON | XXXXXXXXX | 18 |
| 7 | SOUVIK | DUMBUM | XXXXXXXXX | 18 |
| 8 | NIRAJ | NOIDA | XXXXXXXXX | 19 |
| 9 | SOMESH | ROHTAK | XXXXXXXXX | tyve |
Indsættelse af specifikke kolonner ved hjælp af INSERT INTO SELECT eksempel
Hvis vi ønsker at indsætte værdier i de angivne kolonner, bruger vi følgende forespørgsel:
Forespørgsel:
INSERT INTO Student(ROLL_NO,NAME,Age) SELECT ROLL_NO, NAME, Age FROM LateralStudent;>
Produktion:
Denne forespørgsel vil indsætte dataene i kolonnerne ROLL_NO, NAME og Alder i tabellen LateralStudent i tabellen Elev og de resterende kolonner i Elev-tabellen vil blive udfyldt af nul som er standardværdien for de resterende kolonner. Tabellen Elev vil nu se således ud,
| ROLL_NO | NAVN | ADRESSE | TELEFON | Alder |
|---|---|---|---|---|
| 1 | Vædder | Delhi | XXXXXXXXX | 18 |
| 2 | RAMESH | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | tyve |
| 4 | SURESH | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | tyve |
| 2 | RAMESH | GURGAON | XXXXXXXXX | 18 |
| 7 | SOUVIK | nul | nul | 18 |
| 8 | NIRAJ | nul | nul | 19 |
| 9 | SOMESH | nul | nul | tyve |
Indsæt specifikke rækker ved hjælp af INSERT INTO SELECT eksempel:
INSERT INTO Student SELECT * FROM LateralStudent WHERE Age = 18;>
Produktion:
Denne forespørgsel vil kun vælge den første række fra tabellen LateralStudent til at indsætte i tabellen Elev. Tabellen Elev vil nu se således ud,
| ROLL_NO | NAVN | ADRESSE | TELEFON | Alder |
|---|---|---|---|---|
| 1 | Vædder | Delhi | XXXXXXXXX | 18 |
| 2 | RAMESH | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | tyve |
| 4 | SURESH | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | tyve |
| 2 | RAMESH | GURGAON | XXXXXXXXX | 18 |
| 7 | SOUVIK | DUMBUM | XXXXXXXXX | 18 |
Vigtige punkter om SQL INSERT INTO-sætning
- INSERT INTO-sætningen bruges til at tilføje nye poster til en tabel i en database
- Det gør det muligt at indsætte flere poster i en enkelt sætning ved at give flere sæt værdier.
- Hvis du ikke angiver kolonnenavnene, antager sætningen alle kolonner, og værdierne skal være i samme rækkefølge som tabeldefinitionen.
- Kolonner, der ikke er inkluderet i INSERT-sætningen, vil blive fyldt med standardværdier, som typisk er NULL.
- erklæringer betingelse.