Što je SQL? Potpuni tutorijal o osnovama i obrascima
⚡ Pametni sažetak
Što je SQL? Strukturirani jezik upita je standardni jezik za rad s relacijskim bazama podataka. Omogućuje vam stvaranje shema, upite o zapisima, ažuriranje redaka, upravljanje dozvolama i povezivanje modernih aplikacija s tražilicama poput PostgreSQL, MySQLi SQL Server.

Što je SQL?
SQL je standardni jezik za rad s relacijskim bazama podataka. Koristi se za umetanje, pretraživanje, ažuriranje i brisanje zapisa, a također može optimizirati i održavati baze podataka. SQL je ANSI i ISO standard, tako da ista osnovna sintaksa radi na svim tražilicama kao što su PostgreSQL, MySQL, Oraclei SQL Server.
SQL puni obrazac
SQL je kratica za Strukturirani jezik upita, izgovara se kao „SQL“ ili „See-Quel“. IBM razvio ga je 1970-ih, a relacijske baze podataka kao što su MySQL, Oracle Database, Microsoft SQL Server, PostgreSQLi SAP Sybase koristi ANSI SQL kao osnovu.
Kako koristiti SQL
SQL naredbu izdajete pisanjem naredbe koja imenuje operaciju, ciljnu tablicu i sve uvjete filtriranja. SELECT upit koji vraća članove starije od 30 izgleda ovako:
SELECT * FROM Members WHERE Age > 30;
Sintaksa u bazama podataka je uglavnom slična jer svaki veći mehanizam implementira ANSI standard. Nekoliko RDBMS proizvoda dodaje vlasničke dijalekte, na primjer T-SQL u SQL Serveru i PL/SQL u Oracle.
Kliknite ovdje ako video nije dostupan
Za što se koristi SQL?
Evo važnih razloga za korištenje SQL-a:
- Pomaže korisnicima pristupiti podacima u RDBMS sustav.
- Pomaže vam u opisivanju podataka.
- Omogućuje vam da definirate podatke u bazi podataka i manipulirate tim specifičnim podacima.
- Uz pomoć SQL-a možete stvarati i ispuštati baze podataka i tablice.
- SQL vam omogućuje korištenje funkcija u bazi podataka, stvaranje prikaza i pisanje pohranjenih procedura.
- Možete postaviti dopuštenja za tablice, procedure i poglede.
- SQL podržava analitičke zadatke poput izvještavanja, poslovne inteligencije i slanja podataka u cjevovode strojnog učenja.
Kratka povijest SQL-a
Evo važnih orijentira iz povijesti SQL-a:
- 1970. – Dr. Edgar F. “Ted” Codd opisao je relacijski model za baze podataka.
- 1974. – Strukturirani jezik upita pojavio se na IBM Istraživanje.
- 1978 - IBM objavljen System/R.
- 1986. – ANSI je standardizirao SQL kao SQL-86.
- 1989. – Objavljena je prva komercijalna verzija SQL standarda.
- 1999. – SQL:1999 dodao je okidače i objektno orijentirane značajke.
- SQL:2003 – Funkcije prozora i XML značajke.
- SQL:2006 – Podrška za XML jezik upita.
- SQL:2011 – Podrška za temporalne baze podataka.
- SQL:2016 – JSON, prepoznavanje uzoraka redaka, polimorfne tablične funkcije.
- SQL:2023 – Upiti grafova svojstava (SQL/PGQ) i preciznije rukovanje JSON-om.
Vrste SQL naredbi
Evo pet vrsta široko korištenih SQL naredbi:
- Jezik definicije podataka (DDL)
- Jezik za manipulaciju podacima (DML)
- Jezik kontrole podataka (DCL)
- Transaction Control Language (TCL)
- Jezik upita podataka (DQL)
Popis SQL naredbi
Evo popisa nekih od najčešće korištenih SQL naredbe:
- STVORITI – definira strukturu ili shemu baze podataka.
- INSERT – unosi podatke u retke tablice.
- UPDATE – ažurira postojeće podatke u bazi podataka.
- DELETE – uklanja jedan ili više redaka iz tablice.
- SELECT – odabire atribute koji odgovaraju uvjetu opisanom klauzulom WHERE.
- KAP – uklanja tablice i baze podataka.
- SJEDINITI – izvršava INSERT ili UPDATE u jednoj naredbi na temelju uvjeta podudaranja.
SQL proces
Kada izvršite SQL naredbu, mehanizam baze podataka analizira naredbu, odabire plan izvršenja i pokreće ga na sloju za pohranu.
Važne komponente u ovom procesu su:
- SQL Query Engine
- Optimizacijski mehanizam
- Dispečer upita
- Klasični mehanizam upita
Klasični mehanizam za upite obrađuje upite koji nisu SQL, dok SQL mehanizam za upite obrađuje strukturirano opterećenje.

SQL standardi
SQL pokriva stvaranje baze podataka, brisanje, dohvaćanje i mijenjanje redaka te kontrolu pristupa. To je ANSI (Američki nacionalni institut za standarde) i ISO standard, a trenutno izdanje je ISO / IEC 9075: 2023, obično nazvan SQL:2023. Standard je podijeljen u nekoliko dijelova:
| Dio | Description |
|---|---|
| Dio 1 – SQL/Framework | Nudi logičke koncepte koji podupiru svaki ostali dio. |
| 2. dio – SQL/Foundation | Definira središnju sintaksu i semantiku SQL-a. |
| Dio 3 – SQL/CLI | Određuje sučelje na razini poziva koje koriste ODBC i slični upravljački programi. |
| Dio 4 – Postojani pohranjeni moduli | Pohranjene rutine, vanjske rutine i proširenja proceduralnog jezika za SQL. |
| Dio 9 – Upravljanje vanjskim podacima | Dodaje sintaksu i definicije koje omogućuju SQL-u pristup izvorima podataka koji nisu SQL, kao što su datoteke. |
| Dio 10 – Vezanje jezika objekta | Određuje sintaksu i semantiku ugrađivanja SQL-a u Java. |
| Dio 11 – SQL/shema | Sheme informacija i definicija. |
| Dio 13 – SQL/JRT | SQL rutine i tipovi koji koriste Java programski jezik. |
| Dio 14 – SQL/XML | SQL i XML, uključujući integraciju XMLTYPE i XQuery. |
| Dio 15 – SQL/MDA | Pruža SQL podršku za višedimenzionalne nizove. |
| Dio 16 – SQL/PGQ | Dodano u SQL:2023 za definiranje upita grafova svojstava na vrhu relacijskih tablica. |
Moderni SQL mehanizmi
Svaki engine implementira većinu ANSI jezgre i dodaje vlastita proširenja:
- PostgreSQL 17: Otvoreni kod sa strogim poštivanjem standarda i bogatom JSON podrškom.
- MySQL 8: Popularno kod web aplikacija; podržava funkcije prozora, CTE-ove i način rada za pohranu dokumenata.
- Microsoft SQL Server 2022: Enterprise engine s inteligencijom upita i Azure Zrcaljenje sinapsi.
- Oracle Database 23ai: Kombinira SQL s vektorskim pretraživanjem i JSON-relacijskim dualnim prikazima.
- SQLite: Lagani mehanizam temeljen na datotekama ugrađen u mobilne aplikacije i preglednike.
Skladišta u oblaku kao što su Amazon crveni pomak, Google BigQuery i Snowflake također otkrivaju ANSI SQL dijalekte, što jezik čini prenosivim s prijenosnog računala na analitiku petabajtne skale.
Elementi SQL jezika
Evo važnih elemenata SQL jezika:
- ključne riječi: Rezervirane riječi kao što su SELECT, FROM ili WHERE koje grade svaku naredbu.
- Identifikatori: Imena objekata baze podataka kao što su korisnički ID-ovi, tablice i stupci.
- Žice: Doslovni nizovi ili izrazi s tipovima podataka VARCHAR ili CHAR.
- Izrazi: Formirano od konstanti, SQL operatora, naziva stupaca i podupita.
- Uvjeti pretraživanja: Filtrirajte retke ili upravljajte naredbama toka poput IF.
- Posebne vrijednosti: Vrijednosti poput CURRENT_TIMESTAMP koje se koriste u izrazima i zadanim vrijednostima stupaca.
- Varijable: Većina mehanizama podržava lokalne, globalne i varijable na razini veze u pohranjenim procedurama.
- Komentari: Jednolinijski (–) i blokovni (/* */) komentari dokumentiraju SQL, ali se ne izvršavaju.
- NULL vrijednost: NULL označava vrijednost koja je nepoznata, nedostaje ili nije primjenjiva.
Što je baza podataka u SQL-u?
A baza podataka je skup tablica koje pohranjuju strukturirane podatke. Tablica sadrži retke (zapise ili n-torke) i stupce (atribute).
Svaki stupac pohranjuje određenu vrstu informacija, na primjer imena, datume, iznose u dolarima ili brojeve. Odnosi između tablica provode se primarnim i stranim ključevima, što bazu podataka čini „relacijskom“.
Što je NoSQL?
NoSQL je kategorija Sustavi za upravljanje bazama podataka čija je glavna karakteristika nepridržavanje relacijskih koncepata. NoSQL znači „Ne samo SQL“. Kategorija je rasla s internetskim divovima kao što su Google, Facebook i Amazon, koji se bave gigantskim količinama podataka.
Kada relacijske baze podataka obrađuju ogromne količine podataka, vrijeme odziva može se usporiti. Možete "skalirati" nadogradnjom hardvera ili "skalirati van" raspodjelom opterećenja na više hostova.
NoSQL baze podataka su nerelacijski trgovine dizajnirane za web aplikacije. Ne koriste uvijek SQL ili ne provode stroge sheme, a ACID (Atomsvojstva (npr. čvrstoća, konzistentnost, izolacija, trajnost) nisu uvijek zajamčena, iako moderni sustavi poput MongoDB i Cassandra sada nude prilagodljive transakcijske načine rada.
Zašto ima smisla učiti SQL nakon NoSQL-a
S obzirom na to da se NoSQL bolje skalira od relacijskih modela, možda se pitate zašto bi netko ipak učio SQLNoSQL baze podataka su specijalizirane i najbolje za ogromne nestrukturirane skupove podataka, ali većina poslovnih aplikacija i dalje se oslanja na relacijske baze podataka i njihove alate.
Relacijske baze podataka zadržavaju sljedeće prednosti u odnosu na NoSQL:
- Zreli model pohrane i upravljanja podacima, ključan za poslovne korisnike.
- Podrška za prikaze, omogućujući korisnicima da vide samo ovlaštene podatke.
- Podrška za pohranjene procedure koje prenose poslovnu logiku u bazu podataka.
- Jači sigurnosni modeli, kontrole pristupa temeljene na ulogama i značajke revizije.
- SQL je lingua franca poslovne inteligencije, nadzornih ploča i AI alata koji zahtijevaju strukturirani unos.
Potražnja za stručnjacima koji mogu rukovati relacijskim bazama podataka i dalje raste. rastući, tako da učenje osnova SQL-a i dalje ima jasnu vrijednost.
SQL i umjetna inteligencija: Alati za pretvaranje teksta u SQL
SQL je sada ciljni jezik za AI asistente. Pretvaranje teksta u SQL Alati prevode jednostavna engleska pitanja, poput „prikaži 10 najvećih kupaca prošlog kvartala prema prihodu“, u izvršni SQL. Popularne opcije uključuju GitHub kopilot, Vanna AI, Microsoft Kopilot unutra Azure SQL i Oracle Odaberite umjetnu inteligenciju. Uvijek pregledajte generirani SQL radi ispravnosti, sigurnosti i indeksiranja prije nego što ga pokrenete na produkcijskim podacima.
Najbolje knjige za učenje SQL-a
Evo nekih od najboljih knjiga o SQL-u:
- SQL tutorijal za početnike:
Ova SQL Tutorial za početnike PDF pokriva osnovne koncepte baza podataka, MS-SQL naredbe i napredne teme poput SQL spajanja.
- SQL u 10 minuta: Primjeri koda u boji pokazuju kako su SQL naredbe strukturirane, plus prečace i gotova rješenja. KUPITE ODMAH
- SQL kuharica: Tehnike poput raščlanjivanja znakova ili razgraničenih elemenata pomoću SQL-a kroz niz znakova. KUPITE ODMAH
- SQL: The Complete Reference: Obuhvaća funkcije prozora, zakretanje redaka u stupce i obrnuto zakretanje. KUPITE ODMAH
- Džepni vodič za SQL: Podučava SQL funkcije, sintaksu regularnih izraza i pretvorbu tipova. KUPITE ODMAH
Za više SQL knjiga – Kliknite ovdje
