Instrukcja INSERT INTO w języku SQL służy do dodawania nowych rekordów do tabeli w bazie danych. Jest to podstawowe polecenie służące do wstawiania danych i służy do wstawiania nowych danych do tabel.
Składnia
Istnieją dwie składnie instrukcji INSERT INTO w zależności od wymagań. Te dwie składnie to:
1. Tylko wartości
Pierwsza metoda polega na podaniu jedynie wartości danych, które mają zostać wstawione, bez nazw kolumn.
WSTAW DO nazwa_tabeli
WARTOŚCI (wartość1, wartość2, wartość);
Tutaj,
- Nazwa tabeli: nazwa tabeli.
- wartość1, wartość2: wartość pierwszej kolumny, drugiej kolumny,… dla nowego rekordu
2. Nazwy kolumn i wartości
W drugiej metodzie określimy zarówno kolumny, które chcemy wypełnić, jak i odpowiadające im wartości, jak pokazano poniżej:
WŁÓŻ W nazwa_tabeli (kolumna1, kolumna2, kolumna3)
WARTOŚCI (wartość1, wartość2, wartość);
Tutaj,
- Nazwa tabeli: nazwa tabeli.
- kolumna1, kolumna2..: nazwa pierwszej kolumny, drugiej kolumny.
- wartość1, wartość2, wartość..: wartość pierwszej kolumny, drugiej kolumny,… dla nowego rekordu
SQL WSTAW DO Przykładów
Przyjrzyjmy się kilku przykładom instrukcji INSERT INTO w języku SQL, aby lepiej ją zrozumieć.
Załóżmy, że istnieje baza danych Studentów i chcemy dodać wartości.
samouczek języka programowania Java
| ROLL_NO | NAZWA | ADRES | TELEFON | WIEK |
|---|---|---|---|---|
| 1 | Baran | Delhi | xxxxxxxxxxxx | 18 |
| 2 | RAMESZ | GURGAON | xxxxxxxxxxxx | 18 |
| 3 | SUJIT | ROHTAK | xxxxxxxxxxxx | 20 |
| 4 | PEWNY | ROHTAK | xxxxxxxxxxxx | 18 |
| 3 | SUJIT | ROHTAK | xxxxxxxxxxxx | 20 |
| 2 | RAMESZ | GURGAON | xxxxxxxxxxxx | 18 |
Wstawianie tylko nowych wartości przy użyciu przykładu INSERT INTO
Jeśli chcemy wstawić tylko wartości to używamy następującego zapytania:
sortowanie listy tablic w Javie
Zapytanie:
INSERT INTO Student VALUES ('5','HARSH','WEST BENGAL', 'XXXXXXXXXX','19');> Wyjście:
Stół Student będzie teraz wyglądać tak:
| ROLL_NO | NAZWA | ADRES | TELEFON | Wiek |
|---|---|---|---|---|
| 1 | Baran | Delhi | XXXXXXXXX | 18 |
| 2 | RAMESZ | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | 20 |
| 4 | PEWNY | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | 20 |
| 2 | RAMESZ | GURGAON | XXXXXXXXX | 18 |
| 5 | SZORSTKI | BENGAL ZACHODNI | XXXXXXXXX | 19 |
Wstaw wartości do określonych kolumn, korzystając z przykładu INSERT INTO
Jeśli chcemy wstawić wartości do określonych kolumn to używamy następującego zapytania:
Zapytanie:
INSERT INTO Student (ROLL_NO, NAME, Age) VALUES ('5','PRATIK','19');> Wyjście:
Stół Student będzie teraz wyglądać tak:
| ROLL_NO | NAZWA | ADRES | TELEFON | Wiek |
|---|---|---|---|---|
| 1 | Baran | Delhi | XXXXXXXXX | 18 |
| 2 | RAMESZ | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | 20 |
| 4 | PEWNY | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | 20 |
| 2 | RAMESZ | GURGAON | XXXXXXXXX | 18 |
| 5 | ĆWICZYĆ | zero | zero | 19 |
Należy zauważyć, że kolumny, dla których nie podano wartości, są wypełnione wartością null. Jakie są wartości domyślne dla tych kolumn?
Wstaw wiele wierszy w tabeli za pomocą pojedynczej instrukcji SQL
Możesz użyć podanej techniki, aby wstawić wiele wierszy w tabeli w jednym zapytaniu. Oszczędza to czas na pisanie zapytań i zmniejsza błąd marginesu.
Składnia:
WSTAW DO nazwa_tabeli (Kolumna 1, Kolumna 2, Kolumna 3, …….)
WARTOŚCI (Wartość1, Wartość2,Wartość3,…..),
(Wartość1, Wartość2,Wartość3,…..),
(Wartość1, Wartość2,Wartość3,…..),
………………………..;sterta i sortowanie po stercie
Gdzie,
- Nazwa tabeli: nazwa tabeli.
Kolumna 1: nazwa pierwszej kolumny, drugiej kolumny. - Wartości: Wartość1, Wartość2, Wartość3: wartość pierwszej kolumny, drugiej kolumny.
- Dla każdego wstawionego nowego wiersza musisz podać wiele list wartości, gdzie każda lista jest oddzielona znakiem ,. Każda lista wartości odpowiada wartościom, które należy wstawić w każdym nowym wierszu tabeli. Wartości na następnej liście wskazują wartości, które mają zostać wstawione w następnym wierszu tabeli.
Wstaw wiele wierszy w tabeli za pomocą pojedynczej instrukcji SQL Przykład:
Poniższa instrukcja SQL wstawia wiele wierszy w tabeli ucznia.
Zapytanie:
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');>
Wyjście:
Zatem Tabela STUDENT będzie wyglądać następująco:
| ID | NAZWA | WIEK | STOPIEŃ | MIASTO |
|---|---|---|---|---|
| 1 | AMIT KUMAR | piętnaście | 10 | DELHI |
| 2 | GAURI RAO | 18 | 12 | BANGALUR |
| 3 | MANAV BHATT | 17 | jedenaście | NOWE DELHI |
| 4 | RIJA KAPOOR | 10 | 5 | UDAIPUR |
S QL WSTAW DO WYBORU
The SQL WSTAW DO WYBORU instrukcja służy do kopiowania danych z jednej tabeli i wstawiania ich do innej tabeli. Użycie tej instrukcji jest podobne do instrukcji INSERT INTO. Różnica polega na tym, że WYBIERZ instrukcję służy tutaj do wybierania danych z innej tabeli. Poniżej przedstawiono różne sposoby użycia instrukcji INSERT INTO SELECT:
WSTAW DO WYBIERZ Składnia
Istnieją dwie składnie użycia instrukcji INSERT INTO SELECT, w zależności od jej użycia.
Skopiuj wszystkie kolumny i wstaw
Składnia zapytania INSERT INTO SELECT w celu wstawienia wszystkich danych z tabeli do innej tabeli:
WSTAW DO pierwszej_tabeli WYBIERZ * Z drugiej_tabeli;
Tutaj,
- pierwszy_stół: nazwa pierwszej tabeli.
- drugi_stół: nazwa drugiej tabeli.
Użyliśmy instrukcji SELECT do skopiowania danych z jednej tabeli i instrukcji INSERT INTO do wstawienia danych z innej tabeli.
Skopiuj określone kolumny i wstaw
Składnia zapytania INSERT INTO SELECT w celu wstawienia określonych danych z tabeli do innej tabeli:
WSTAW DO pierwszej_tabeli (nazwy_kolumn1)
WYBIERZ nazwy_kolumn2 Z drugiej_tabeli;
Tutaj,
wybierz sql z wielu tabel
- pierwsza_tabela : nazwa pierwszej tabeli. druga_tabela: nazwa drugiej tabeli.
- nazwy kolumn 1: nazwy kolumn oddzielonych przecinkiem(,) dla tabeli 1.
- nazwy kolumn2 : nazwy kolumn oddzielonych przecinkiem(,) dla tabeli 2.
Użyliśmy instrukcji SELECT do skopiowania danych wybranych kolumn tylko z drugiej tabeli oraz instrukcji INSERT INTO do wstawienia do pierwszej tabeli.
C opy określone wiersze i wstaw
Możemy skopiować określone wiersze z tabeli i wstawić je do innej tabeli, używając klauzuli WHERE z instrukcją SELECT. Aby wybrać konkretne wiersze, musimy podać odpowiednie warunki w klauzuli WHERE.
Składnia zapytania INSERT INTO SELECT w celu wstawienia określonych wierszy z tabeli
INSERT INTO tabela1 WYBIERZ * Z tabeli2 WHERE warunek;
Tutaj,
- pierwsza_tabela : nazwa pierwszej tabeli.
- drugi_stół : nazwa drugiej tabeli.
- stan : warunek wyboru określonych wierszy.
SQL INSERT INTO SELECT Przykłady
Przyjrzyjmy się kilku przykładom instrukcji INSERT INTO SELECT, aby lepiej ją zrozumieć.
Załóżmy, że istnieje baza danych lateralStudent.
| ROLL_NO | NAZWA | ADRES | TELEFON | Wiek |
|---|---|---|---|---|
| 7 | SOUVIK | HYDERABAD | XXXXXXXXX | 18 |
| 8 | NIRAJ | NOIDA | XXXXXXXXX | 19 |
| 9 | JAKIŚ | ROHTAK | XXXXXXXXX | 20 |
Wstawianie wszystkich wierszy i kolumn na przykładzie INSERT INTO SELECT
Jeśli chcemy wstawić tylko wartości to używamy następującego zapytania:
Zapytanie:
INSERT INTO Student SELECT * FROM LateralStudent;>
Wyjście:
To zapytanie wstawi wszystkie dane z tabeli lateralStudent do tabeli Student. Tabela Student będzie teraz wyglądać tak,
| ROLL_NO | NAZWA | ADRES | TELEFON | Wiek |
|---|---|---|---|---|
| 1 | Baran | Delhi | XXXXXXXXX | 18 |
| 2 | RAMESZ | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | 20 |
| 4 | PEWNY | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | 20 |
| 2 | RAMESZ | GURGAON | XXXXXXXXX | 18 |
| 7 | SOUVIK | GŁUPI | XXXXXXXXX | 18 |
| 8 | NIRAJ | NOIDA | XXXXXXXXX | 19 |
| 9 | JAKIŚ | ROHTAK | XXXXXXXXX | 20 |
Wstawianie określonych kolumn na przykładzie INSERT INTO SELECT
Jeśli chcemy wstawić wartości do określonych kolumn to używamy następującego zapytania:
losowy w c
Zapytanie:
INSERT INTO Student(ROLL_NO,NAME,Age) SELECT ROLL_NO, NAME, Age FROM LateralStudent;>
Wyjście:
Zapytanie to wstawi dane w kolumnach ROLL_NO, NAZWA i Wiek tabeli lateralStudent w tabeli Student, a pozostałe kolumny w tabeli Student zostaną wypełnione przez zero która jest wartością domyślną pozostałych kolumn. Tabela Student będzie teraz wyglądać tak,
| ROLL_NO | NAZWA | ADRES | TELEFON | Wiek |
|---|---|---|---|---|
| 1 | Baran | Delhi | XXXXXXXXX | 18 |
| 2 | RAMESZ | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | 20 |
| 4 | PEWNY | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | 20 |
| 2 | RAMESZ | GURGAON | XXXXXXXXX | 18 |
| 7 | SOUVIK | zero | zero | 18 |
| 8 | NIRAJ | zero | zero | 19 |
| 9 | JAKIŚ | zero | zero | 20 |
Wstaw określone wiersze, korzystając z przykładu INSERT INTO SELECT:
INSERT INTO Student SELECT * FROM LateralStudent WHERE Age = 18;>
Wyjście:
To zapytanie wybierze tylko pierwszy wiersz z tabeli lateralStudent do wstawienia do tabeli Student. Tabela Student będzie teraz wyglądać tak,
| ROLL_NO | NAZWA | ADRES | TELEFON | Wiek |
|---|---|---|---|---|
| 1 | Baran | Delhi | XXXXXXXXX | 18 |
| 2 | RAMESZ | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | 20 |
| 4 | PEWNY | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | 20 |
| 2 | RAMESZ | GURGAON | XXXXXXXXX | 18 |
| 7 | SOUVIK | GŁUPI | XXXXXXXXX | 18 |
Ważne uwagi dotyczące instrukcji SQL INSERT INTO
- Instrukcja INSERT INTO służy do dodawania nowych rekordów do tabeli w bazie danych
- Umożliwia wstawianie wielu rekordów w jednej instrukcji poprzez podanie wielu zestawów wartości.
- Jeśli nie określisz nazw kolumn, instrukcja przyjmie wszystkie kolumny, a wartości muszą być w tej samej kolejności, co w definicji tabeli.
- Kolumny nieuwzględnione w instrukcji INSERT zostaną wypełnione wartościami domyślnymi, które zazwyczaj mają wartość NULL.
- warunek oświadczenia.