Osnovne SQL izjave
Standard SQL jezika usvojen je 1992. i još je u upotrebi. On je postao standard za mnoge sustavi upravljanja bazom podataka.
sadržaj
- Uvod
- Sql izjave za manipulaciju podacima
- Izjava select
- Malo više o select. upotreba zbirnih funkcija
- Sintaksa select izjave i redoslijed njezine obrade
- Operatori za usporedbu podataka
- Poput
- SluČaj
- Operatori definicija podataka
- Drop table
- Create index
- Alter tablica
- Create view
- Malo o funkcijama
- Dodatni operatori
- Nekoliko savjeta za razvoj platforme za rad s sql-om
- Zaključak
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.
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.
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.
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.
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.
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.
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.
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
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.
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.
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.
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.
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.
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.
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.
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.
- Distribuirane baze podataka
- Baza podataka je složen sustav
- Normalizacija baze podataka
- Sustavi upravljanja životom i bazama podataka
- SQL datoteku. SQL format datoteke: opis proširenja
- Pregled sustava za upravljanje bazama podataka
- Kako sastaviti SQL upite - detaljni primjeri
- Koji su podaci? Vrste podataka
- MySQL odaberite od odabira: operator uzorkovanja
- Koristeći MySQL: umetnite u
- Zamke DML-naredbi ažuriraju MySQL
- SQL gdje: metode primjene i primjeri
- Funkcija stvaranja tablice u SQL - Stvaranje tablice
- Stvaranje SQL tablice korak po korak
- Izrada upita u programu Access. Vrste zahtjeva
- Objavi SQL: opis. Transact-SQL
- Obriši izjavu Izbriši MySQL
- Pojedinosti o povezivanju tablica za pristup
- Koje vrste baza podataka postoje danas?
- Opći koncepti Access DBMS-a
- Glavne točke koje ima Access baza podataka