logo

Declaració SQL INSERT INTO

La instrucció INSERT INTO en SQL s'utilitza per afegir nous registres a una taula d'una base de dades. És una ordre fonamental per a la inserció de dades i s'utilitza per inserir dades noves a les taules.

Sintaxi

Hi ha dues sintaxis de sentències INSERT INTO segons els requisits. Les dues sintaxis són:

1. Només Valors

El primer mètode és especificar només el valor de les dades que s'han d'inserir sense els noms de columna.



INSERT INTO nom_taula
VALORS (valor1, valor2, valor);

Aquí,

  • nom_taula: nom de la taula.
  • valor1, valor2: valor de la primera columna, segona columna,... per al nou registre

2. Noms de columnes i valors

En el segon mètode especificarem tant les columnes que volem omplir com els seus valors corresponents tal com es mostra a continuació:

INSERTAR A nom_taula (columna1, columna2, columna3)
VALORS (valor1, valor2, valor);

Aquí,

  • nom_taula: nom de la taula.
  • columna 1, columna 2...: nom de la primera columna, segona columna.
  • valor1, valor2, valor...: valor de la primera columna, segona columna,... per al nou registre

SQL INSERT INTO Exemples

Vegem alguns exemples de la instrucció INSERT INTO en SQL per entendre-la millor.

Suposem que hi ha una base de dades d'estudiants i volem afegir valors.

connectivitat java
ROLL_NO NOM ADREÇA TELÈFON EDAT
1 Ram Delhi xxxxxxxxxxxx 18
2 RAMESH GURGAON xxxxxxxxxxxx 18
3 SUJIT ROHTAK xxxxxxxxxxxx 20
4 SURESH ROHTAK xxxxxxxxxxxx 18
3 SUJIT ROHTAK xxxxxxxxxxxx 20
2 RAMESH GURGAON xxxxxxxxxxxx 18

Inserir només valors nous amb l'exemple INSERT INTO

Si volem inserir només valors, fem servir la següent consulta:

Consulta:

  INSERT INTO  Student   VALUES   ('5','HARSH','WEST BENGAL', 'XXXXXXXXXX','19');>

Sortida:

La taula Estudiant ara tindrà aquest aspecte:

ROLL_NO NOM ADREÇA TELÈFON Edat
1 Ram Delhi XXXXXXXXX 18
2 RAMESH GURGAON XXXXXXXXX 18
3 SUJIT ROHTAK XXXXXXXXX 20
4 SURESH Delhi XXXXXXXXX 18
3 SUJIT ROHTAK XXXXXXXXX 20
2 RAMESH GURGAON XXXXXXXXX 18
5 DURS BENGALA OCCIDENTAL XXXXXXXXX 19

Insereix valors a les columnes especificades mitjançant l'exemple INSERT INTO

Si volem inserir valors a les columnes especificades, fem servir la següent consulta:

format de cadena java

Consulta:

  INSERT INTO  Student (ROLL_NO, NAME, Age)   VALUES   ('5','PRATIK','19');>

Sortida:

La taula Estudiant ara tindrà aquest aspecte:

ROLL_NO NOM ADREÇA TELÈFON Edat
1 Ram Delhi XXXXXXXXX 18
2 RAMESH GURGAON XXXXXXXXX 18
3 SUJIT ROHTAK XXXXXXXXX 20
4 SURESH Delhi XXXXXXXXX 18
3 SUJIT ROHTAK XXXXXXXXX 20
2 RAMESH GURGAON XXXXXXXXX 18
5 PRÀCTICA nul nul 19

Tingueu en compte que les columnes per a les quals no es proporcionen els valors s'omplen amb null. Quins són els valors predeterminats per a aquestes columnes?

Inseriu diverses files en una taula mitjançant una instrucció SQL única

Podeu utilitzar la tècnica donada per inserir diverses files en una taula en una sola consulta. Això estalvia temps per escriure consultes i redueix l'error de marge.

Sintaxi:

INSERT INTO nom_taula(Columna1,Columna2,Columna3,…….)
VALORS (Valor1, Valor2, Valor3,…..),
(Valor1, Valor2, Valor3,…..),
(Valor1, Valor2, Valor3,…..),
……………………….. ;

On,

  • nom_taula: nom de la taula.
    Columna 1: nom de la primera columna, segona columna.
  • Valors: Valor1, Valor2, Valor3: el valor de la primera columna, segona columna.
  • Per a cada fila nova inserida, heu de proporcionar diverses llistes de valors on cada llista estigui separada per ,. Cada llista de valors correspon als valors que s'han d'inserir a cada nova fila de la taula. Els valors de la llista següent indiquen els valors que s'han d'inserir a la fila següent de la taula.

Insereix diverses files en una taula mitjançant l'exemple d'instrucció SQL única:

La següent instrucció SQL insereix diverses files a la taula d'estudiants.

Consulta:

  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');>

Sortida:

Així, la taula de l'ALUMNE es veurà així:

ID NOM EDAT GRAU CIUTAT
1 AMIT KUMAR 15 10 DELHI
2 GAURI RAO 18 12 BANGALORE
3 MANAV BHATT 17 11 NOVA DELHI
4 RIYA KAPOOR 10 5 UDAIPUR

S QL INSERT INTO SELECT

El SQL INSERT INTO SELECT La instrucció s'utilitza per copiar dades d'una taula i inserir-les en una altra taula. L'ús d'aquesta instrucció és similar al de la instrucció INSERT INTO. La diferència és que el Declaració SELECT s'utilitza aquí per seleccionar dades d'una taula diferent. Les diferents maneres d'utilitzar la instrucció INSERT INTO SELECT es mostren a continuació:

INSERTAR A SELECCIONAR Sintaxi

Hi ha dues sintaxis per utilitzar la instrucció INSERT INTO SELECT, depenent del seu ús.

Copieu totes les columnes i inseriu-les

La sintaxi per utilitzar la consulta INSERT INTO SELECT per inserir totes les dades d'una taula a una altra taula:

codis de color java

INSERT INTO primera_taula SELECT * FROM segona_taula;

Aquí,

  • primera_taula: nom de la primera taula.
  • segona_taula: nom de la segona taula.

Hem utilitzat la instrucció SELECT per copiar les dades d'una taula i la instrucció INSERT INTO per inserir des d'una taula diferent.

Copieu columnes específiques i inseriu-les

La sintaxi per utilitzar la consulta INSERT INTO SELECT per inserir dades específiques d'una taula a una altra taula:

INSERT INTO primera_taula(noms_de_columnes1)
SELECT names_of_columns2 FROM segona_taula;

Aquí,

  • primera_taula : nom de la primera taula. segona_taula: nom de la segona taula.
  • noms de columnes 1: nom de les columnes separades per comes (,) per a la taula 1.
  • noms de columnes 2 : nom de les columnes separades per comes (,) per a la taula 2.

Hem utilitzat la instrucció SELECT per copiar les dades de les columnes seleccionades només de la segona taula i la instrucció INSERT INTO per inserir a la primera taula.

C opy Files específiques i Insereix

Podem copiar files específiques d'una taula per inserir-les en una altra taula utilitzant la clàusula WHERE amb la instrucció SELECT. Hem de proporcionar condicions adequades a la clàusula WHERE per seleccionar files específiques.

emojis d'iphone a Android

La sintaxi per utilitzar la consulta INSERT INTO SELECT per inserir files específiques de la taula

INSERT INTO table1 SELECT * FROM taula2 ON condició;

Aquí,

  • primera_taula : nom de la primera taula.
  • segona_taula : nom de la segona taula.
  • condició : condició per seleccionar files específiques.

SQL INSERT INTO SELECT Exemples

Vegem alguns exemples de la sentència INSERT INTO SELECT per entendre-la millor.

Bubble sort python

Suposem que hi ha una base de dades LateralStudent.

ROLL_NO NOM ADREÇA TELÈFON Edat
7 SOUVIK HYDERABAD XXXXXXXXX 18
8 NIRAJ NOIDA XXXXXXXXX 19
9 SOMESH ROHTAK XXXXXXXXX 20

Inserint totes les files i columnes amb l'exemple INSERT INTO SELECT

Si volem inserir només valors, fem servir la següent consulta:

Consulta:

  INSERT INTO  Student   SELECT   *  FROM   LateralStudent;>

Sortida:

Aquesta consulta inserirà totes les dades de la taula LateralStudent a la taula Student. La taula Student tindrà ara aquest aspecte,

ROLL_NO NOM ADREÇA TELÈFON Edat
1 Ram Delhi XXXXXXXXX 18
2 RAMESH GURGAON XXXXXXXXX 18
3 SUJIT ROHTAK XXXXXXXXX 20
4 SURESH Delhi XXXXXXXXX 18
3 SUJIT ROHTAK XXXXXXXXX 20
2 RAMESH GURGAON XXXXXXXXX 18
7 SOUVIK MUMBUM XXXXXXXXX 18
8 NIRAJ NOIDA XXXXXXXXX 19
9 SOMESH ROHTAK XXXXXXXXX 20

Inserció de columnes específiques mitjançant l'exemple INSERT INTO SELECT

Si volem inserir valors a les columnes especificades, fem servir la consulta següent:

Consulta:

  INSERT INTO  Student(ROLL_NO,NAME,Age)   SELECT   ROLL_NO, NAME, Age  FROM   LateralStudent;>

Sortida:

Aquesta consulta inserirà les dades a les columnes ROLL_NO, NOM i Edat de la taula LateralStudent a la taula Student i les columnes restants a la taula Student s'ompliran per nul que és el valor per defecte de les columnes restants. La taula Student tindrà ara aquest aspecte,

ROLL_NO NOM ADREÇA TELÈFON Edat
1 Ram Delhi XXXXXXXXX 18
2 RAMESH GURGAON XXXXXXXXX 18
3 SUJIT ROHTAK XXXXXXXXX 20
4 SURESH Delhi XXXXXXXXX 18
3 SUJIT ROHTAK XXXXXXXXX 20
2 RAMESH GURGAON XXXXXXXXX 18
7 SOUVIK nul nul 18
8 NIRAJ nul nul 19
9 SOMESH nul nul 20

Inseriu files específiques utilitzant l'exemple INSERT INTO SELECT:

  INSERT INTO  Student   SELECT   *  FROM   LateralStudent WHERE Age = 18;>

Sortida:

Aquesta consulta seleccionarà només la primera fila de la taula LateralStudent per inserir-la a la taula Student. La taula Student tindrà ara aquest aspecte,

ROLL_NO NOM ADREÇA TELÈFON Edat
1 Ram Delhi XXXXXXXXX 18
2 RAMESH GURGAON XXXXXXXXX 18
3 SUJIT ROHTAK XXXXXXXXX 20
4 SURESH Delhi XXXXXXXXX 18
3 SUJIT ROHTAK XXXXXXXXX 20
2 RAMESH GURGAON XXXXXXXXX 18
7 SOUVIK MUMBUM XXXXXXXXX 18

Aspectes importants sobre la instrucció SQL INSERT INTO

  • La instrucció INSERT INTO s'utilitza per afegir nous registres a una taula d'una base de dades
  • Permet inserir diversos registres en una sola instrucció proporcionant diversos conjunts de valors.
  • Si no especifiqueu els noms de les columnes, la instrucció assumeix totes les columnes i els valors han d'estar en el mateix ordre que la definició de la taula.
  • Les columnes no incloses a la instrucció INSERT s'ompliran amb valors predeterminats, que normalment són NULL.
  • declaracions condició.