Osnovne SQL izjave

Standard SQL jezika usvojen je 1992. i još je u upotrebi. On je postao standard za mnoge sustavi upravljanja bazom podataka.

Naravno, neki proizvođači koriste svoje tumačenje standarda. Ali u svakom sustavu postoje glavne komponente - SQL izrazi.

uvod

Korištenje SQL izraza u bazama podataka upravlja vrijednostima, tablicama i dohvaća ih radi daljnje analize i prikazivanja. To su skup ključnih riječi za koje sustav razumije što učiniti s podacima.

sql izjava

Definirajte nekoliko kategorija SQL izraza:

  • definiranje objekata baze podataka;
  • manipuliranje vrijednosti;
  • zaštita i upravljanje;
  • parametre sesije;
  • informacije o bazi;
  • statički SQL;
  • dinamički SQL.

SQL izjave za manipulaciju podacima

Ova kategorija uključuje ključne riječi kojima možete upravljati položajem vrijednosti u bazi podataka.

sql operatera upita

INSERT. Stavlja retke u postojeću tablicu. Može se upotrijebiti za jednu vrijednost, ili nekoliko, definiranih određenim uvjetima. Na primjer:

INSERT INTO

naziv tablice (naziv stupca 1, naziv stupca 2)

VALUES (vrijednost 1, vrijednost 2).

Upotreba operatera SQL upit INSERT za nekoliko vrijednosti, koristi se sljedeća sintaksa:

INSERT INTO

naziv tablice 1 (naziv stupca 1, naziv stupca 2)

SELECT naziv stupca 1, naziv stupca 2

Iz naziva tablice 2

WHERE naziv tablice 2. naziv stupca 1> 2

Taj će upit odabrati sve podatke iz tablice 2 koji su veći od 2 prema stupcu 1 i umetnite ih u prvi.

UPDATE. Kao što naziv implicira, ovaj operater SQL upita ažurira podatke u postojećoj tablici za određenu karakteristiku.

primjer:

UPDATE naziv tablice 1

Naziv stupca SET 2 = "Bazilika"

WHERE naziv tablice 1. naziv stupca 1 = 1

Ova konstrukcija ispunit će vrijednost Basil sa svim redovima u kojima se susreće s brojem 1 u prvom stupcu.

DELETE. Uklanja podatke iz tablice. Možete odrediti stanje ili ukloniti sve retke.

DELETE FROM naziv tablice

WHERE naziv tablice. Naziv stupca 1 = 1

Gornji upit uklanja sve podatke iz baze podataka s vrijednošću jednog u prvom stupcu. Evo kako možete izbrisati cijelu tablicu:

DELETE FROM naziv tablice.

Nadalje, potrebno je reći o operatoru SELECT. On je jedan od najvažnijih, pa će morati posvetiti posebno poglavlje.

Izjava SELECT

Glavna svrha SELECT-a je preuzimanje podataka za određene uvjete. Rezultat njegova rada je uvijek nova tablica s odabranim podacima. MS operatera SQL SELECT mogu se koristiti u masi različitih zahtjeva. Stoga, zajedno s njom možete razmotriti i druge povezane ključne riječi.

Da biste odabrali sve podatke iz određene tablice, upotrijebite znak "*".

SELECT *

Iz naziva tablice 1

Rezultat ovog upita bit će točna kopija tablice 1.

A ovdje se uzorak uzima uz uvjet WHERE, koji ekstrakti iz tablice 1 sve vrijednosti veće od 2 u stupcu 1.

SELECT *

Iz naziva tablice 1

WHERE naziv tablice 1. naziv stupca 1> 2

U odabiru možete odrediti da su potrebni samo određeni stupci.

SELECT ime tablice 1. naziv stupca 1

Iz naziva tablice 1

Rezultat ovog upita će sve linije s vrijednostima stupca 1. Korištenje MS SQL operateri mogu kreirati vlastiti stol, u tijeku zamjene, obračuna i zamjenom određenih vrijednosti.

MS msl izjave

ODABERITE

naziv tablice 1. naziv stupca 1

naziv tablice 1. naziv stupca 2

naziv tablice 1. naziv stupca 3

«=» AS EQ

naziv tablice 1. naziv stupca 2 * naziv tablice 1. naziv stupca 3 AS SUMMA

Iz naziva tablice 1

Ovaj naizgled složen upit preuzima sve vrijednosti iz tablice 1, a zatim stvara nove stupce EQ i SUMMA. Prvi stavlja znak "+", u drugom proizvodu podataka iz stupaca 2 i 3. Rezultat se može prikazati u obliku tablice kako bi se razumjelo kako funkcionira:

Stupac 1

Stupac 2

Kolona 3

EQ

SUMMA

Naziv proizvoda 1

10

50

+

500

Naziv proizvoda 2

15

100

+

1500

Kada koristite SELECT izjavu, možete odmah organizirati podatke o bilo kojoj značajci. Da biste to učinili, upotrijebite riječ ORDER BY.

ODABERITE

naziv tablice 1. naziv stupca 1

naziv tablice 1. naziv stupca 2

naziv tablice 1. naziv stupca 3

Iz naziva tablice 1

ORDER BY naziv stupca 2

Stvorena tablica izgledat će ovako:

Stupac 1

Stupac 2

Kolona 3

1

1

54

3

2

12

7

3

100

2

5

1

To jest, svi redci su postavljeni u ovom redoslijedu, tako da se u stupcu 2 vrijednosti kreću prema gore.

Podaci se također mogu dobiti iz nekoliko tablica. Radi jasnoće, najprije morate zamisliti da postoje dva u bazi podataka, otprilike sljedeće:

Tablica zaposlenika

broj

ime

Prezime

1

Vasja

Vasin

2

Petya

Petin

Tablica "Plaća"

broj

brzina

dodijeljen

1

1

10000

2

0.5

3500

Sada morate nekako povezati ta dva tablica da biste dobili zajedničke vrijednosti. Pomoću osnovnih SQL izraza možete to učiniti:

ODABERITE

Broj zaposlenika

Zaposlenici. Ime

Zarplata.Stavka

Zarplata.Nachisleno

OD Zaposlenika, Plaća

WHERE Employees.Number = Plaća.Number

Ovdje se nalazi izbor iz dvije različite tablice vrijednosti, ujedinjene po broju. Rezultat je sljedeći skup podataka:

broj

ime

brzina

dodijeljen

1

Vasja

1

10000

2

Petya

0.5

3500

Malo više o SELECT. Upotreba zbirnih funkcija

Jedna od osnovnih SQL SELECT izjava može izvesti neke izračune u uzorku. Da biste to učinili, koristi određene funkcije i formule.



osnovne sql izjave

Na primjer, da biste dobili broj unosa iz tablice Zaposlenici, morate upotrijebiti upit:

ODABERITE COUNT (*) KAO N

Od zaposlenika

Rezultat je tablica s jednim vrijednošću i stupcem.

N

2

U uputama možete koristiti funkcije koje izračunavaju sumu, maksimalnu i minimalnu vrijednost i srednju vrijednost. Za to se upotrebljavaju ključne riječi SUM, MAX, MIN, AVG.

Na primjer, trebate uzorak iz već poznate tablice "Plaća":

broj

brzina

dodijeljen

1

1

10000

2

0.5

3500

Možete primijeniti ovaj upit i vidjeti što se događa:

ODABERITE

SUM (Salary.Specified) AS SUMMA

MAX (Plaća.No) AS MAX

MIN (Plaća.No) AS MIN

AVG (Plaća.No) AS SRED

OD plaće

Konačni stol će biti sljedeći:

SUMMA

MAX

MIN

SRED

13500

10000

3500

6750

Na taj način možete odabrati željene vrijednosti iz baze podataka, u letu, obavljanjem izračuna različitih funkcija.

Ujedinjenje, raskrižje i razlike

Spoji više upita u SQL

SELECT Employees.Name

Od zaposlenika

WHERE Employees.Number = 1

UNIJA

SELECT Employees.Name

OD Zaposlenika, Plaća

WHERE Salary.Number = 1

U ovom slučaju, treba imati na umu da s takvom kombinacijom tablica treba biti kompatibilna. To jest, imaju isti broj stupaca.

Sintaksa SELECT izjave i redoslijed njezine obrade

Prva stvar SELECT određuje područje iz koje će preuzeti podatke. Za to se koristi ključna riječ FROM. Ako nije navedeno, što točno odabrati.

Zatim postoji svibanj biti SQL WHERE klauzulu. Pomoću nje SELECT prolazi kroz sve redove tablice i provjerava podatke za sukladnost sa stanjem.

SQL operatera za usporedbu

Ako upit sadrži skupinu GROUP BY, vrijednosti se grupiraju prema navedenim parametrima.

Operatori za usporedbu podataka

Postoji nekoliko vrsta. U SQL, operatori za usporedbu mogu testirati različite vrste vrijednosti.

  • "=". Označava, kao što mislite, jednakost dva izraza. Na primjer, već je upotrijebljen u gornjim primjerima - WHERE Plaća Number = 1.

  • ">". Znak je veći. Ako je vrijednost lijeve strane izraza veća, tada se logički TRUE vraća i uvjet je zadovoljen.

  • "<”. Znak je manji. Preokrenite prethodnu izjavu.

  • Znakovi "<= "I"> = ". Ono se razlikuje od jednostavnih operatera sve manje i manje, jer kada su operandi jednaki, to stanje će također biti točno.

  • "<> ». Nije jednako. Stanje će se smatrati TRUE samo ako jedan operand nije jednak drugom. Ima još jednu interpretaciju - "! =".

POPUT

Prevedi ovu ključnu riječ kao "sličnu". Izjava LIKE u SQL-u se koristi na isti način - provodi upit na predlošku. To znači da vam omogućuje da proširite odabir podataka iz baze podataka pomoću regularnih izraza.

poput operatera u sql

Na primjer, postavljen je sljedeći zadatak: od već poznate baze "Zaposlenici", da biste dobili sve osobe čije ime završava "I". Zatim upit može biti napisan kako slijedi:

SELECT *

Od zaposlenika

WHERE naziv kao `% I`

Postotni znak u ovom slučaju znači masku, odnosno bilo koji simbol i njihov broj. I pismo "ja" SQL će odrediti da posljednji znak bude upravo to.

SLUČAJ

Ova izjava SQL Server je implementacija višestrukih izbora. Slikuje se projektiranjem prekidača na mnogim programskim jezicima. Izjava CASE u SQL-u obavlja radnju u nekoliko uvjeta.

Na primjer, trebate odabrati maksimalne i minimalne vrijednosti iz tablice "Plaća".

broj

brzina

dodijeljen

1

1

10000

2

0.5

3500

Zatim upit može biti napisan kako slijedi:

SELECT *

OD plaće

GDJE SE U SLUČAJU ODLUČI MAX (Neriješeno) TAKOĐER Maksimalno

Kada SELECT MIN (Nabavi) TAKO Minimalno

END ukupno

U tom kontekstu sustav traži maksimalnu i minimalnu vrijednost u stupcu "Obračun". Nakon toga, koristeći na kraju polja stvorio „ukupno”, koja će biti zapisane u „maksimalno” ili „minimum”, ovisno o rezultatu stanju.

Usput, u SQL postoji i kompaktniji oblik CASE - COALESCE.

Operatori definicija podataka

Ovaj vam pogled omogućuje različite promjene tablica - stvaranje, brisanje, izmjena i rad s indeksima.

Prva koja treba uzeti u obzir je CREATE TABLE. Ne čini ništa osim izrade tablice. Ako upisujete samo CREATE TABLE, ništa se neće dogoditi, budući da još uvijek morate odrediti nekoliko parametara.

Na primjer, za stvaranje već poznate tablice "Zaposlenici" upotrijebite sljedeće naredbe:

CREATE TABLE Zaposlenici

(Broj (10) NIJE NULL

Ime varchar (50) NOT NULL

Prezime varchar (50) NOT NULL)

U ovom upitu, nazivi polja i njihovi tipovi su odmah definirani u zagradama, a također može li biti NULL.

DROP TABLE

Izvršava jedan jednostavan zadatak - brisanje navedene tablice. Ima dodatni parametar IF EXISTS. Apsorbira grešku kada se briše ako tablica ne postoji. Primjer korištenja:

DROP TABLE Zaposlenici MOGUĆE IZVRSNOSTI.

CREATE INDEX

SQL ima indeksni sustav koji vam omogućuje ubrzavanje pristupa podacima. Općenito, to je referenca koja ukazuje na određeni stupac. Stvaranje indeksa može biti jednostavan upit:

CREATE INDEX index_name

ON tbl_name (naziv stupca)

Ovaj operator se koristi u T-SQL, Oracle, PL SQL i mnogim drugim interpretacijama tehnologija.

ALTER TABLICA

Vrlo funkcionalan operator s mnogo opcija. Općenito, čini promjenu strukture, definicije i postavljanja tablica. Operater se koristi u Oracle SQL, Postgres i mnogi drugi.

Ispod ćete naći različite mogućnosti korištenja ALTER TABLE.

  • ADD. Dodaje stupac u tablicu. Sintaksa je: ALTER TABLE tbl_name DODJELI stupac_name data_type_type. Može imati parametar NIJE ISKORIŠTEN, što potiskuje pogrešku ako stupac koji je stvoren već postoji;

  • KAP. Briše stupac. Ima i ključ EXISTS, bez kojih se generira pogreška koja označava da nedostaje željeni stupac;

  • PROMJENE. Kliknite za preimenovanje naziva polja na navedeno polje. Primjena primjera: ALTER TABLE tbl_name PROMIJENI old_name new_name;

  • MIJENJAJU. Ova naredba pomoći će promijeniti vrstu i dodatne atribute određenog stupca. I upotrebljava se ovako: ALTER TABLE tbl_name MODIFY column_name atributa podataka tipa;

CREATE VIEW

U SQL-u postoji takva stvar poput prikaza. Ukratko, ovo je vrsta virtualne tablice s podacima. Stvara se kao rezultat uzorkovanja pomoću SQL SELECT izjave. Prikazi mogu ograničiti pristup bazi podataka, sakriti ih, zamijeniti stvarne nazive stupaca.

t sql izjava

Proces izrade se obavlja jednostavnim upitom:

CREATE VIEW naziv prikaza AS SELECT FROM * naziv tablice

Uzorak se može pojaviti i kao cijela baza podataka u cjelini, a za neke stanje.

Malo o funkcijama

SQL upiti često koriste različite ugrađene funkcije koje omogućuju interakciju s podacima i njihovo pretvaranje u letu. Vrijedi ih razmotriti jer čine sastavni dio strukturiranog jezika.

  • TOČKA. Broji zapise ili retke u određenoj tablici. Kao parametar možete odrediti naziv stupca, a zatim će se podaci preuzeti iz njega. SELECT COUNT * FROM Employees;

  • AVG. Ova se funkcija odnosi samo na stupce s numeričkim podacima. Njegov rezultat je određivanje aritmetičke sredine svih vrijednosti;

  • MIN i MAX. Te su funkcije već korištene u ovom članku. Određuju maksimalne i minimalne vrijednosti iz navedenog stupca;

  • SUM. Jednostavno - funkcija izračunava zbroj vrijednosti stupca. Koristi se samo za numeričku vrstu podataka. Dodavanjem DISTINCT u upit dodaje se samo jedinstvene vrijednosti;

  • OKRUGLI. Funkcija zaobljenja decimalnih frakcijskih brojeva. Sintaksa koristi naziv stupca i broj decimalnih mjesta;

  • LEN. Jednostavna funkcija koja izračunava duljinu vrijednosti stupaca. Rezultat je nova tablica s brojem znakova;

  • SADA. Ova se ključna riječ koristi za izračun trenutnog datuma i vremena.

Dodatni operatori

Mnogi primjeri s SQL izjavama imaju ključne riječi koje obavljaju male zadatke, ali ipak uvelike pojednostavljuju uzorkovanje ili radnje s bazama podataka.

  • AS. Koristi se kada vizualizirajte rezultat vizualno, dodjeljivanjem navedenog naziva rezultiranoj tablici.

  • IZMEĐU. Vrlo prikladan alat za uzorkovanje. Označava raspon vrijednosti među kojima želite dohvatiti podatke. Unos prihvaća parametar od i na koji se broj koristi raspon.

  • NE. Operater daje suprotno izrazu.

  • Skratiti. Uklanja podatke iz navedenog dijela baze podataka. Ono se razlikuje od sličnih operatera po tome što je nemoguće oporaviti podatke nakon upotrebe. Valja napomenuti da implementacija ove ključne riječi u različitim tumačenjima SQL-a može biti drugačija. Stoga, prije nego što pokušate koristiti TRUNCATE, bolje je upoznati se s referentnim informacijama.

  • Granica. Određuje broj linija za izlaz. Posebnost operatora je da se uvijek nalazi na kraju. Potrebno je jedan obvezni parametar i jedan opcionalni parametar. Prva specificira koliko redaka s odabranim podacima treba biti prikazano. A ako se drugi koristi, operator se aktivira i za raspon vrijednosti.

  • Unije. Vrlo zgodan operator za kombiniranje nekoliko upita. Već se susreo među primjerima ovoga u ovom članku. Možete prikazati potrebne redove iz nekoliko tablica, kombinirajući njihovu UNION za praktičniju upotrebu. Njegova sintaksa je sljedeća: SELECT column_name FROM tbl_name UNION SELECT name_of_column_column FROM naziv druge tablice. Rezultat je sažetak tablice s spojenim upitima.

  • PRIMARNI KEY. Prevedeno kao "primarni ključ". Zapravo, to je terminologija koja se koristi u referentnim materijalima. To znači jedinstveni identifikator za niz. Koristi se, u pravilu, prilikom izrade tablice za određivanje polja, koje će ga sadržavati.

  • DEFAULT. Baš kao i prethodna izjava, ona se upotrebljava za vrijeme izvršavanja upita za stvaranje. Navodi se zadana vrijednost koju će polje popuniti prilikom izrade.

Nekoliko savjeta za razvoj platforme za rad s SQL-om

  1. NULL. Početnici, a ne samo programeri često zaboravljaju na mogućnost dobivanja NULL vrijednosti prilikom izrade upita. Kao rezultat toga, pogreška se prelijeva u kôd, što je teško pratiti tijekom uklanjanja pogrešaka. Stoga, prilikom izrade tablica, odabira ili ponovnog izračuna vrijednosti morate se zaustaviti i misliti i uzima li se u obzir pojavljivanje NULL-a u ovom dijelu upita.

  2. Memorija. Ovaj je članak prikazao nekoliko funkcija koje mogu obavljati neke zadatke. Prilikom izrade ljuske za rad s bazom podataka, možete "prevagnuti" izračun jednostavnih izraza na sustavu upravljanja bazom podataka. U nekim slučajevima to značajno povećava performanse.

  3. Ograničenja. Ako trebate dobiti samo dva iz baze podataka s tisućama redaka, trebali biste koristiti operatore kao što su LIMIT ili TOP. Ne trebate izvući podatke pomoću jezika za razvoj ljuske.

  4. Connect. Nakon primanja podataka iz nekoliko tablica, mnogi programeri počinju ih povezati pomoću memorije ljuske. Ali zašto? Uostalom, možete napraviti jedan zahtjev u kojem će sve to biti prisutno. Ne morate napisati dodatnu šifru i rezervirati dodatnu memoriju u sustavu.

  5. Sortiranje. Ako postoji mogućnost primjene narudžbe u upitu, to jest, DBMS, onda ga morate koristiti. To će znatno uštedjeti na resursima prilikom pokretanja programa ili usluge.

  6. Mnogi zahtjevi. Ako morate umetnuti puno zapisa u slijedu, a zatim za optimizaciju, razmislite o umetanju paketnih podataka jednim upitom. To će također povećati performanse cijelog sustava.

  7. Razumno postavljanje podataka. Prije sastavljanja strukture baze podataka morate razmišljati o tome trebate li tako veliki broj tablica i polja. Možda postoji način da ih kombiniramo ili odustanemo od nekih. Vrlo često programeri koriste prekomjernu količinu podataka koji nikada neće biti korišteni.

  8. Vrste. Kako biste uštedjeli prostor i resurse, morate biti osjetljivi na vrste podataka koji se koriste. Ako je moguće koristiti manje "teške" vrste memorije, onda je potrebno primijeniti. Na primjer, ako znate da u ovom polju brojčana vrijednost ne prelazi 255, onda zašto koristiti INT-4 byte ako postoji TINYINT u 1 bajtu.

zaključak

Zaključno treba napomenuti da se jezik strukturiranih SQL upita sada koristi gotovo svugdje - web-mjesta, web-usluge, računalni programi, aplikacije za mobilne uređaje. Stoga će znanje SQL pomoći svim granama razvoja.

Istovremeno, izmjene izvornog standarda jezika ponekad se razlikuju jedna od druge. Na primjer, PL SQL izjave mogu imati drugačiju sintaksa nego u sustavu SQL Server. Stoga, prije nego što počnete s razvojem ove tehnologije, vrijedi pročitati priručnike o tome.

U budućnosti se vjerojatno neće pojaviti analozi koji bi mogli nadmašiti funkcionalnost i performanse SQL, pa je ovo područje prilično obećavajuća niša za bilo kojeg programera.

Dijelite na društvenim mrežama:

Povezan
Baza podataka je složen sustavBaza podataka je složen sustav
Normalizacija baze podatakaNormalizacija baze podataka
Sustavi upravljanja životom i bazama podatakaSustavi upravljanja životom i bazama podataka
SQL datoteku. SQL format datoteke: opis proširenjaSQL datoteku. SQL format datoteke: opis proširenja
Pregled sustava za upravljanje bazama podatakaPregled sustava za upravljanje bazama podataka
Kako sastaviti SQL upite - detaljni primjeriKako sastaviti SQL upite - detaljni primjeri
Koji su podaci? Vrste podatakaKoji su podaci? Vrste podataka
MySQL odaberite od odabira: operator uzorkovanjaMySQL odaberite od odabira: operator uzorkovanja
Koristeći MySQL: umetnite uKoristeći MySQL: umetnite u
Zamke DML-naredbi ažuriraju MySQLZamke DML-naredbi ažuriraju MySQL
» » Osnovne SQL izjave
LiveInternet