Sisestage valitud oraakli süntaksisse. T-SQL-i põhitõed. DML. Demo andmebaas

Lisaks varem käsitletud SELECT-lausele sisaldab Data Manipulation Language (DML) veel kolme lauset: INSERT, UPDATE ja DELETE. Sarnaselt SELECT-lausega toimivad need kolm lauset kas tabelites või vaadetes. See artikkel käsitleb INSERT-lauset ja ülejäänud kahte väidet käsitletakse järgmises artiklis.

SISESTAGE avaldus lisab read (või ridade osad) tabelisse. Sellel juhisel on kaks erinevat vormi:

INSERT tab_name [(col_list)] VAIKEVÄÄRTUSED | VÄÄRTUSED ((VAIKE | NULL | avaldis ) [ ,...n]) INSERT INTO vahekaardi_nimi | vaate_nimi [(veeru_loend)] (select_statement | execute_statement) Süntaksi kokkulepped

Avalduse esimene vorm võimaldab sisestada tabelisse ühe rea (või osa sellest). Ja INSERT-lause teine ​​vorm võimaldab teil tabelisse sisestada SELECT-lause tulemuskomplekti või EXECUTE-lausega käivitatud salvestatud protseduuri. Salvestatud protseduur peab tagastama tabelisse lisatavad andmed. Kui seda kasutatakse koos INSERT-lausega, saab SELECT-lause valida väärtusi teisest või samast tabelist, kuhu andmed sisestatakse, kui vastavate veergude andmetüübid on ühilduvad.

Mõlema vormi puhul peab iga sisestatud väärtuse andmetüüp ühilduma vastava tabeli veeru andmetüübiga. Kõik stringid ja ajutised andmed tuleb panna jutumärkidesse; Numbrilisi väärtusi ei pea jutumärkidesse panema.

Üherealine sisestus

INSERT-lause mõlema vormi puhul on selge veergude loend valikuline. Veergude loendi puudumine võrdub kõigi tabeli veergude täpsustamisega.

DEFAULT VALUES parameeter lisab kõigi veergude vaikeväärtused. Veerud, mille andmetüüp on TIMESTAMP või atribuut IDENTITY, sisestatakse vaikimisi süsteemi poolt automaatselt genereeritud väärtustega. Muude andmetüüpide veergude puhul lisatakse vastav vaikeväärtus, mis ei ole null, kui see on olemas, või NULL muul juhul. Kui veeru jaoks pole nullväärtused lubatud ja veeru jaoks pole vaikeväärtust määratletud, siis INSERT-lause nurjub ja kuvatakse vastav teade.

Järgmine näide lisab SampleDb andmebaasi töötaja tabelisse read, näidates, kuidas kasutada INSERT-lauset väikese andmemahu sisestamiseks andmebaasi.

KASUTAGE SampleDb; INSERT INTO Töötaja VÄÄRTUSED(34990, "Andrey", "Batonov", "d1"); INSERT INTO Töötaja VÄÄRTUSED(38640, "Aleksei", "Vasin", "d3");

On kaks erinevaid viise väärtuste lisamine uude reale. INSERT-lause allolevas näites kasutab sõnaselgelt märksõna NULL ja lisab NULL-väärtuse vastavasse veergu:

KASUTAGE SampleDb; INSERT INTO Töötaja VÄÄRTUSED(34991, "Andrey", "Batonov", NULL);

Väärtuste sisestamiseks tabeli mõnesse (kuid mitte kõikidesse) veergu peate tavaliselt need veerud selgelt määrama. Määramata veerud peavad lubama nullväärtusi või neil peab olema määratletud vaikeväärtus.

KASUTAGE SampleDb; INSERT INTO Töötaja(Id, eesnimi, perekonnanimi) VÄÄRTUSED (34992, "Andrey", "Batonov");

Kaks eelmist näidet on samaväärsed. Tabelis Töötaja ainuke nullväärtusi lubav veerg on veerg DepartmentNumber ja kõigi teiste veergude puhul keelas selle väärtuse lause NOT NULL lauses CREATE TABLE.

Väärtuste järjekord sisse lause VÄÄRTUSED INSERT avaldused võivad erineda avalduses CREATE TABLE määratud järjestusest. Sellisel juhul peab nende järjekord ühtima järjekorraga, milles vastavad veerud on veergude loendis loetletud. Järgmine on näide andmete sisestamise kohta originaalist erinevas järjekorras:

KASUTAGE SampleDb; INSERT INTO Töötaja(osakonnanumber, perekonnanimi, ID, eesnimi) VÄÄRTUSED ("d1", "Batonov", 34993, "Andrey");

Mitme rea lisamine

INSERT-lause teine ​​vorm lisab tabelisse ühe või mitu alampäringuga valitud rida. Allolev näide näitab, kuidas lisada tabelisse ridu, kasutades INSERT-lause teist vormi. Sel juhul palutakse valida Moskvas asuvate osakondade numbrid ja nimed ning saadud komplekt laaditakse uus laud varem loodud.

Ülaltoodud näites loodud uues Moskva osakonna tabelis on samad veerud, mis olemasoleval osakonna tabelis, välja arvatud puuduv Asukoht. Alampäring INSERT-lauses valib osakonna tabeli kõik read, mille veeru Asukoht väärtus on Moskva, mis seejärel sisestatakse päringu alguses loodud uude tabelisse.

Allolev näide näitab teist võimalust tabelisse ridade lisamiseks, kasutades INSERT-lause teist vormi. Sel juhul sooritatakse päring, et valida personalinumbrid, projektinumbrid ja projekti alguskuupäevad kõikidele p2 projektiga töötavatele ametikohal "Juhataja" töötajatele ning seejärel laetakse saadud komplekt uude alguses loodud tabelisse. päringust:

KASUTAGE SampleDb; CREATE TABLE Manager Team(EmpId INT NOT NULL, ProjectNumber CHAR(4) NOT NULL, EnterDate DATE); INSERT INTO ManagerTeam(EmpId, ProjectNumber, EnterDate) SELECT EmpId, ProjectNumber, EnterDate FROM Works_on WHERE Job = "Manager";

Enne ridade lisamist INSERT-lause abil olid tabelid MoscowDepartment ja ManagerTeam (ülaltoodud näidetes) tühjad. Kui tabel oli juba olemas ja sisaldas andmeridasid, lisatakse sellele uued read.

SQL-i abil saate teavet ühest tabelist teise kopeerida.

INSERT INTO SELECT käsk kopeerib andmed ühest tabelist ja lisab need olemasolevasse tabelisse.

SQL INSERT INTO SELECT avaldus,

INSERT INTO SELECT käsk valib andmed ühest tabelist ja lisab need olemasolevasse tabelisse. Sihttabeli olemasolevaid ridu ei muudeta.

SQL INSERT INTO SELECT, süntaks

Saame kopeerida kõik veerud ühest tabelist teise olemasolevasse tabelisse:

INSERT INTO tabel2
SELECT * FROM Tabel 1;

Või saame kopeerida ainult soovitud veerud teise olemasolevasse tabelisse:

INSERT INTO tabel2
(veeru_nimi(d))
VALI veeru_nimi(d)
FROM Tabel 1;

Demo andmebaas

Selles õpetuses kasutame tuntud Northwindi andmebaasi.

Allpool on valik "Kliendid" tabelist:

kasutaja IDkliendi nimiKontaktisikAadresslinnPostiindeksRiik
1 Alfred Futterkiste Maria Anders Obere Str. 57 Berliin 12209 Saksamaa
2 Ana Trujillo Emparedados ja helados Ana Trujillo Avda. de la Constitucion 2222 Mehhiko D.F. 05021 Mehhiko
3 Antonio Moreno Taqueria Antonio Moreno Mataderos 2312 Mehhiko D.F. 05023 Mehhiko

Ja valik "Tarnijate" tabelist:

SQL INSERT INTO SELECT, näited

Vaid mõne veeru kopeerimine jaotisest "Tarnijad" jaotisesse "Kliendid" :

Kopeerige jaotisesse "Kliendid" ainult Saksa tarnijaid.

INSERT-lause lisab tabelisse uued kirjed. Sel juhul võivad veeru väärtused olla otsesed konstandid või olla alampäringu tulemus. Esimesel juhul kasutatakse iga rea ​​lisamiseks eraldi INSERT-lauset; teisel juhul lisatakse nii palju ridu, kui palju alampäring tagastab.

Operaatori süntaks on järgmine:

    SISESTAGE[(,...)]

    (VÄÄRTUSED(,…) )

  1. | ( VAIKEVÄÄRTUSED )

Nagu esitatud süntaksist näha, on veergude loend valikuline (süntaksi kirjelduses näitavad seda nurksulud). Kui see puudub, peab sisestatud väärtuste loend olema täielik, st esitama väärtused tabeli kõigi veergude jaoks. Väärtuste järjekord peab vastama järjekorrale, mille määrab tabeli CREATE TABLE lause, millesse read lisatakse. Lisaks peavad need väärtused olema sama tüüpi kui veerud, kuhu need sisestatakse. Näiteks kaaluge rea lisamist tootetabelisse, mis on loodud järgmise lausega CREATE TABLE:

    LOO TABLE toode

    tegija täht (1) EI TOHI NULL,

    mudel varchar(4) NOT NULL,

    tippige varchar(7) NOT NULL

Sellesse tabelisse tuleb lisada tootja B arvutimudel 1157. Seda saab teha järgmise lausega:

    INSERT INTO Product

    VÄÄRTUSED ("B" , 1157 , "PC" );

Kui määrate veergude loendi, saate muuta nende järjestuse "loomulikku" järjekorda.

    INSERT INTO Toode (tüüp, mudel, tootja)

    VÄÄRTUSED ("PC" , 1157 , "B" );

Näib, et see on täiesti ebavajalik funktsioon, mis muudab disaini ainult tülikamaks. Siiski võidab see, kui veergudel on vaikeväärtused. Mõelge järgmisele tabeli struktuurile:

    LOO TABEL toode_D

    tegija täht (1) NULL,

    mudel varchar(4) NULL,

    tüüp varchar (7) NOT NULL DEFAULT "PC"

Pange tähele, et siin on kõigi veergude väärtustel vaikeväärtused (esimesed kaks on NULL ja viimane veerg on tüüp - PC). Nüüd võiksime kirjutada:

    INSERT INTO Product_D(mudel, valmistaja)

    VÄÄRTUSED(1157 , "B" );

Sel juhul asendatakse puuduv väärtus rea sisestamisel vaikeväärtusega PC. Pange tähele, et kui lauses CREATE TABLE ei ole veeru jaoks määratud vaikeväärtust ja pole määratud piirangut NOT NULL, mis keelaks selles tabeli veerus NULL-i kasutamise, siis eeldatakse NULL-i vaikeväärtust.

Tekib küsimus: kas on võimalik mitte määrata veergude loendit ja siiski kasutada vaikeväärtusi? Vastus on positiivne. Selleks kasutage väärtuse selgesõnalise määramise asemel reserveeritud sõna DEFAULT :

    INSERT INTO Product_D

    VÄÄRTUSED ("B" , 1158 , vaikimisi );

Kuna kõikidel veergudel on vaikeväärtused, võiks vaikeväärtustega rea ​​lisamiseks kirjutada:

    INSERT INTO Product_D

    VÄÄRTUSED (VAIKESE , VAIKESED , VAIKESED ) ;

Selle juhtumi jaoks on aga olemas spetsiaalne DEFAULT VALUES konstruktsioon (vt operaatori süntaks), mille abil saab ülaltoodud operaatori ümber kirjutada

    INSERT INTO Product_D VAIKEVÄÄRTUSED ;

Pange tähele, et rea tabelisse lisamisel kontrollitakse kõiki sellele tabelile kehtestatud piiranguid. Need võivad olla primaarvõtme või kordumatu indeksi piirangud, CHECK tüübi kontrolli piirangud, referentsiaalne terviklikkus. Kui mõnda piirangut rikutakse, lükatakse rea lisamine tagasi. Mõelge nüüd alampäringu kasutamise juhtumile. Oletame, et tahame sisestada tabelisse Product_D kõik mudelitega seotud read tootetabelist personaalarvutid(type='PC'). Kuna meile vajalikud väärtused on juba mõnes tabelis olemas, on sisestatud ridade käsitsi moodustamine esiteks ebaefektiivne ja teiseks võib lubada sisestusvigu. Alampäringu kasutamine lahendab järgmised probleemid:

Sümboli "*" kasutamine alampäringus on sel juhul õigustatud, kuna veergude järjekord on mõlema tabeli puhul sama. Kui see nii ei oleks, tuleks veergude loendit rakendada kas INSERT-lauses või alampäringus või mõlemas, mis ühtiks veergude järjekorraga:

Siin, nagu varemgi, ei saa määrata kõiki veerge, kui soovid kasutada näiteks olemasolevaid vaikeväärtusi:

Sel juhul seatakse tabeli Product_D tüübiveeru kõigi sisestatud ridade jaoks vaikeväärtus PC.

Pange tähele, et predikaati sisaldava alampäringu kasutamisel lisatakse ainult need read, mille puhul predikaadi väärtus on TRUE (mitte TAMATU!). Teisisõnu, kui tabeli Toote tüübi veerg oleks nullitav ja see väärtus oleks olemas mitmel real, ei lisataks neid ridu tabelisse Product_D.

Ühe rea lisamise piirangust INSERT-lausesse VALUES-lauses reakonstruktori kasutamisel ületamiseks on kunstlik trikk kasutada alampäringut, mis moodustab rea koos klausliga UNION ALL. Nii et kui meil on vaja sisestada mitu rida ühe INSERT-lausega, võime kirjutada:

    INSERT INTO Product_D

    VALI "B" AS tegija, 1158 AS mudel, "PC" AS tüüp

    LIIT KÕIK

    VALI "C" , 2190 , "Sülearvuti"

    LIIT KÕIK

    VALI "D" , 3219 , "Printer" ;

UNION ALL kasutamine on parem kui UNION, isegi kui on tagatud, et ridade duplikaate ei teki, sest sel juhul ei kontrollita duplikaatide olemasolu.

Tuleb märkida, et stringikonstruktori abil mitme korteeži sisestamine on juba sisse viidud Relatsiooniandmebaasi haldussüsteem (DBMS), mille on välja töötanud Microsoft Corporation.Struktureeritud päringukeel on üldotstarbeline arvutikeel, mida kasutatakse relatsiooniandmebaasides andmete loomiseks, muutmiseks ja töötlemiseks. SQL Server 2008. Arvestades seda võimalust, saab viimase päringu ümber kirjutada järgmiselt:

    SISESTAGE toote_D VÄÄRTUSED

    ("B" , 1158 , "PC") ,

    ("C", 2190, "sülearvuti") ,

Tere! Selles artiklis arutatakse, kuidas saate lisage andmed tabelisse Microsoftis SQL Server, kui olete T-SQL keelega juba veidi tuttav, siis ilmselt saite aru, et nüüd räägime INSERT-lausest ja ka sellest, kuidas seda saab kasutada tabelisse andmete lisamiseks.

Alustame väikese teooriaga.

INSERT avaldus T-SQL-is

LISA on T-SQL käsk, mis on mõeldud andmete lisamiseks tabelisse, st. uute kirjete loomine. See juhend saab kasutada nii tabelisse ühe rea lisamiseks kui ka andmete hulgi sisestamiseks. INSERT-lause nõuab andmete sisestamiseks luba ( LISA) sihttabelisse.

INSERT-lause kasutamiseks sisestatavate andmete osas on mitu võimalust:

  • Sisestatavate konkreetsete väärtuste loendus;
  • Andmestiku määramine SELECT päringuna;
  • Andmestiku määramine protseduurikutsena, mis tagastab tabeliandmed.

Lihtsustatud süntaks

INSERT [tabel] ( veergude loend...) VÄÄRTUSED ( väärtuste loetelu, … ) või VALI näidistaotlus Või TEOSTA menetlust

  • INSERT INTO on käsk andmete lisamiseks tabelisse;
  • Tabel on sihttabeli nimi, millesse uued kirjed sisestatakse;
  • Veergude loend on komadega eraldatud loend tabeli veergude nimedest, millesse andmed sisestatakse;
  • VALUES on tabeli väärtuste konstruktor, mille abil määrame väärtused, mille me tabelisse lisame;
  • Väärtuste loend on sisestatavad väärtused, mis on eraldatud komadega. Need on loetletud selles järjekorras, milles veerud on veergude loendis loetletud;
  • SELECT on päring tabelisse lisatavate andmete valimiseks. Päringu tagastatav tulemikomplekt peab ühtima veergude loendiga;
  • EXECUTE on protseduuri kutse andmete tabelisse sisestamiseks. Salvestatud protseduuri poolt tagastatud tulemuste komplekt peab ühtima veergude loendiga.

Selline näeb välja lause INSERT INTO lihtsustatud süntaks, enamikul juhtudel lisatakse tabelitesse uusi kirjeid nii.

Veergude loendi, millesse andmeid sisestate, saab ära jätta, sel juhul määratakse nende järjekord tabeli veergude tegeliku järjestuse alusel. Siiski peate seda järjekorda meeles pidama, kui määrate väärtusi valikupäringu sisestamiseks või kirjutamiseks. Isiklikult soovitan teil ikkagi määrata veergude loendi, kuhu kavatsete andmeid lisada.

Samuti tuleb meeles pidada, et vastavalt veergude loendis ja väärtuste loendis peavad olema nn kohustuslikud veerud, need on need, mis ei saa sisaldada väärtust NULL. Kui neid pole määratud ja veerus ei ole vaikeväärtust, ilmneb tõrge.

Samuti tahaksin märkida, et sisestatavate väärtuste andmetüüp peab vastama selle veeru andmetüübile, kuhu see väärtus lisatakse, või vähemalt toetama kaudset teisendamist. Kuid ma soovitan teil kontrollida andmetüüpi ( vormingus) väärtused nii väärtuste loendis kui ka päringus SELECT.

Aitab teooriast, liigume edasi praktika juurde.

Esialgsed andmed

Andmete tabelisse lisamiseks vajame vastavalt tabelit ennast, teeme selle ja juba proovime sinna kirjeid lisada.

Märge! Kõik näited käitatakse rakenduses Microsoft SQL Server 2016 Express.

CREATE TABLE TestTable( IDENTITY(1,1) NOT NULL, (100) NOT NULL, NOT NULL)

Meie testtabel sisaldab toodete nimekirja koos hinnaga.

Ka näidetes kasutame tabelisse andmete lisamiseks protseduuri, mis tagastab tabeli väärtuse, nii et loome ka selle.

LOO PROTSEDUUR TestProcedure AS ALGUS VALI tootenimi, hind alates TestTabel LÕPP

Näiteks tagastab see andmed vastloodud tabelist TestTable.

Märge!

Nagu te mõistate, eeldab selle materjali lugemine teatud teadmisi T-SQL-i keelest, nii et kui midagi pole teile selge, soovitan teil tutvuda järgmiste materjalidega:

Näide 1 – Uue kirje lisamine tabelisse tabeliväärtuste koostaja abil

Esmalt proovime lisada ühe rekordi ja kohe vaadata tulemust, st. Kirjutame valiku kohta päringu.

INSERT INTO TestTable(tootenimi, hind) VALUES("Arvuti", 100) GO SELECT * FROM TestTable

Näete, et tabeli nime järel loetlesime komadega eraldatud veergude nimed, kuhu andmeid lisame, seejärel märkisime märksõna VÄÄRTUSED ja sulgudes, samas järjekorras, eraldades komadega, kirjutasime väärtused, mida tahame lisada.

Pärast INSERT avaldust kirjutasin SELECT avaldus ja eraldas need käsuga GO.

Nüüd kujutame ette, et peame lisama mõned read. Selle jaoks kirjutame järgmise päringu.

INSERT INTO TestTable(Tootenimi, Hind) VÄÄRTUSED ("Arvuti", 100), ("Klaviatuur", 20), ("Monitor", 50) GO SELECT * FROM TestTable


Näide 2 – Uute ridade lisamine tabelisse päringu SELECT abil

Väga sageli tekib vajadus lisada tabelisse palju andmeid, näiteks valikupäringu alusel, s.t. VALI. Selleks peame VÄÄRTUSTE asemel lihtsalt määrama päringu.

INSERT INTO TestTable(tootenimi, hind) SELECT tootenimi, hind testitabelist WHERE Id >


IN see näide kirjutasime SELECT päringu, mis tagastab andmed TestTabelist, kuid mitte kõik, vaid ainult need, mille identifikaator on suurem kui 2. Ja tulemus sisestati samasse TestTabelisse.

Näitena, kuidas saab tabelisse kirjeid lisada ilma veergude loendit määramata, kirjutame veel ühe sisestuspäringu, mis teeb sama, mis ülaltoodud päring, ainult et see ei loetle sisestatavaid veerge.

INSERT INTO TestTable SELECT Product Name, Price FROM TestTable WHERE Id > 2 GO SELECT * FROM TestTable


Sel juhul oleme kindlad, et TestTabeli esimene veerg on Tootenimi ja teine ​​Hind, nii et saame selle nii kirjutada. Kuid praktikas on jällegi parem määrata veergude loend.

Kui märkate, ei täpsustanud ma kõigis näidetes veergu Id, kuid meil on see olemas, viga ei olnud, kuna antud veerg IDENTITY atribuudiga genereerib see automaatselt identifikaatorid, nii et andmete sisestamine sellisesse veergu lihtsalt ei toimi.

Näide 3 – Uute kirjete lisamine tabelisse salvestatud protseduuri abil

Nüüd sisestame tabelisse andmed, mille salvestatud protseduur meile tagastab. Siin on tähendus sama, VÄÄRTUSTE asemel ja päringu asemel määrame protseduurikutse. Kuid nagu te mõistate, peab protseduuri poolt tagastatud veergude järjekord ja arv täpselt ühtima sisestatavate veergude loendiga ( isegi kui veergude loendit pole määratud).

INSERT INTO TestTable(Tootenimi, Hind) EXEC TestProcedure GO SELECT * FROM TestTable


Loodan, antud materjal aitas teil juhiseid mõista INSERT INTO, ja mul on praegu kõik olemas!

Käsk lisab tabelisse ridu või vaade põhitabelile.

Sql INSERT käsu süntaks

Sisestage käsu süntaks


Peamine märksõnad ja käsu INSERT parameetrid
  • skeem- asutuse identifikaator, tavaliselt sama mis mõne kasutajanimega
  • tabeli vaade- tabeli nimi, millesse read lisada; kui vaade on määratud, lisatakse read vaate põhitabelisse
  • alampäring_1- alampäring, mida server töötleb samamoodi nagu vaadet
  • veerg- tabeli või vaate veerg, kuhu iga sisestatud rea jaoks sisestatakse fraasi väärtus VÄÄRTUSED või alampäring; kui üks tabeli veergudest on sellest loendist välja jäetud, on sisestatud rea veeru väärtus tabeli loomisel määratletud veeru vaikeväärtus. Kui veergude loend on täielikult välja jäetud, siis klausel VÄÄRTUSED või päring peaks määrama väärtused tabeli kõikidele veergudele
  • VÄÄRTUSED- määrab tabelisse või vaatesse lisatavate väärtuste jada; tähendus tuleb lauses määratleda VÄÄRTUSED veergude loendi iga veeru jaoks
  • alampäring_2- alampäring, mis tagastab tabelisse sisestatud read; selle alampäringu valikuloendis peab olema sama arv veerge kui väite veergude loendis

avaldus fraasiga VÄÄRTUSED lisab tabelisse ühe rea. See string sisaldab fraasiga määratletud väärtusi VÄÄRTUSED.
Heakskiit koos alampäring fraasi asemel VÄÄRTUSED lisab tabelisse kõik alampäringu tagastatud read. Server töötleb alampäring ja lisab iga tagastatud rea tabelisse. Kui alampäring ei vali ühtegi rida, ei lisa server tabelisse ühtegi rida.
Alampäring võib viidata mis tahes tabelile või vaatele, sealhulgas väite sihttabelile . Server määrab uute ridade väljadele väärtused tabeli veergude sisemise asukoha ja fraasiväärtuste järjekorra alusel VÄÄRTUSED või päringu valikuloendis. Kui veergude loendist puuduvad veerud, määrab server neile vaikeväärtused, mis määrati tabeli loomisel. Kui mõnel neist veergudest on piirang NOT NULL, tagastab server veateate, mis näitab, et piirangut on rikutud, ja tühistab INSERT-lause.
Kui väljastatakse INSERT-avaldus, kaasatakse kõik tabelis määratletud INSERT-päästikud.

INSERT INTO Näide 1

INSERT INTO osakond VÄÄRTUSED(50, TOOTED, SAN FRANCISCO);

INSERT INTO Kliendid (linn, cname, cnum) VÄÄRTUSED("London", "Hoffman", 2001);

INSERT INTO Näide 2
Järgmine käsk kopeerib boonuste tabelisse ettevõtte töötajate andmed, kelle vahendustasud ületavad 25% tulust:

INSERT INTO lisatasu SELECT email, töö, sal, komm FROM emp WHERE komm > 0,25 * sal;

INSERT INTO Näide 3
Kui teil on vaja sisestada NULL-value, peate selle määrama normaalväärtusena järgmiselt:

INSERT INTO Müüjad VÄÄRTUSED(1001,'Peel',NULL,12);

INSERT INTO Näide 4
Käsku saab kasutada ühest tabelist väärtuste hankimiseks ja päringu abil teise paigutamiseks. Selleks piisab lause asendamisest VÄÄRTUSED vastavale taotlusele:

INSERT INTO Londonstaff SELECT * FROM Müügitöötajad WHERE linn = 'London';

MySQL INSERT

Uute ridade lisamiseks andmebaasi MySQL-i andmed kasutatud INSERT käsk, käskude näited on toodud allpool:
INSERT INTO Näide 1.
Sisesta uus rida tabelisse tabeli_nimi.

INSERT INTO

INSERT INTO Näide 2.
Tabelis tabeli_nimi uue rea lisamine, mis näitab andmete sisestamist vajalikesse veergudesse.

INSERT INTO tabeli_nimi VALUES('1','165','0','nimi');

Andmebaasis MySQLühe käsuga on võimalik sisestada mitu reavahetust.
INSERT INTO Näide 3.
Sisestage tabelisse tabeli_nimi mitu rida.

INSERT INTO tabeli_nimi (tbl_id, chislo, chislotwo, nimi) VÄÄRTUSED ('1','159','34','nimi1'), ('2','14','61','name2'), ('3 ','356','8','nimi3');