SQL (Structured Query Language)

SQL je deklarativní jazyk, což znamená, že uživatel definuje co chce získat (např. „všechny zákazníky z Prahy“), nikoliv jak má počítač technicky data na disku vyhledat. Vznikl v 70. letech v laboratořích IBM a od té doby se stal celosvětovým standardem pro práci s daty.

SQL se používá v relačních databázích (RDBMS), kde jsou data organizována do tabulek s řádky a sloupci, které jsou mezi sebou propojeny pomocí relací (vztahů).

Čtyři základní operace (CRUD)

Většina práce v SQL se točí kolem čtyř základních akcí, pro které se v IT používá akronym CRUD:

Operace	SQL příkaz	Příklad
Create (Vytvořit)	INSERT	Vložení nového uživatele do databáze.
Read (Číst)	SELECT	Vyhledání informací o produktu podle ID.
Update (Aktualizovat)	UPDATE	Změna adresy u existujícího zákazníka.
Delete (Mazat)	DELETE	Odstranění starého záznamu z tabulky.

Struktura SQL dotazu

Typický dotaz pro výběr dat vypadá následovně:

SELECT jmeno, email FROM uzivatele WHERE mesto = 'Praha' ORDER BY jmeno ASC;

Tento příkaz říká: „Vyber sloupce jméno a e-mail z tabulky uživatelé, ale jen ty z Prahy, a seřaď je podle jména od A do Z.“

Kategorie SQL příkazů

Jazyk SQL se dělí do několika podskupin podle jejich účelu:

DML (Data Manipulation Language): Práce se samotnými daty (SELECT, INSERT, UPDATE, DELETE).

DDL (Data Definition Language): Definice struktury (vytváření tabulek, změna sloupců – CREATE, ALTER, DROP).

DCL (Data Control Language): Správa přístupových práv (GRANT, REVOKE).

Relační model a JOIN

Síla SQL spočívá v možnosti propojovat tabulky. Místo toho, aby byla všechna data v jedné obří tabulce, jsou rozdělena (např. tabulka Objednávky a tabulka Zákazníci). Pomocí příkazu JOIN je lze spojit do jednoho výsledku.

Nejpoužívanější SQL databáze

Přestože je SQL standardem, různí výrobci mají své vlastní implementace (dialekty), které se mírně liší:

MySQL / MariaDB: Nejpopulárnější open-source databáze, základ většiny webů (WordPress atd.).

PostgreSQL: Pokročilá open-source databáze s důrazem na standardy a komplexní funkce.

Microsoft SQL Server: Robustní řešení pro firemní prostředí v ekosystému Windows.

SQLite: Lehká databáze uložená v jediném souboru, používaná v mobilních aplikacích (Android, iOS).

Oracle Database: Špičkové a nákladné řešení pro kritické systémy velkých korporací a bank.

SQL vs. NoSQL

V posledních letech se vedle SQL prosadily i NoSQL databáze (např. MongoDB).

Vlastnost	SQL (Relační)	NoSQL (Nereleleční)
Struktura	Pevně dané schéma (tabulky).	Flexibilní schéma (dokumenty, grafy).
Škálování	Vertikální (výkonnější server).	Horizontální (více levnějších serverů).
Vztahy	Výborné pro komplexní relace.	Vhodné pro nestrukturovaná data.
CAP	Obvykle upřednostňuje Konzistenci.	Často upřednostňuje Dostupnost.

Související pojmy: Databáze, CRUD, JOIN, NoSQL, CAP teorém, MySQL, PostgreSQL, Indexování.