Toto je starší verze dokumentu!


Relační datový model a jazyk SQL

Jazyk SQL

SQL = structured query language, je standardizovaný dotazovací jazyk používaný pro práci s daty v relačních databázích

Příkazy e mohou více či méně lišit pro konkrétní databázi

SQL příkazy se dělí na čtyři základní skupiny:

  • Příkazy pro definici dat (CREATE, ALTER, DROP, …)
  • Příkazy pro manipulaci s daty (SELECT, INSERT, UPDATE, DELETE, …)
  • Příkazy pro řízení přístupových práv (GRANT, REVOKE)
  • Příkazy pro řízení transakcí (START TRANSACTION, COMMIT, ROLLBACK)
  • Ostatní nebo speciální příkazy

Příkazy pro definici dat

Lze označit jako DDL – Data Definition Language

CREATE - slouží pro vytváření nových objektů

- například: tabulku, index, pohled, proceduru

Vytvoření pohledu

CREATE VIEW <nazev pohledu>
AS
<SELECT prikaz>

Vytvoření indexu

CREATE [UNIQUE] [CLUSTERED | NONCLUSTERED]
INDEX <nazev indexu> ON <nazev tabulky nebo pohledu>(<nazev sloupce> [ASC | DESC]
[,...n])

ALTER - slouží pro upravení objektů

DROP - pro smazání objektů

Příkazy pro manipulaci s daty

Slouží pro manipulaci s daty.

DELETE - maže data z tabulky

DELETE from users where (age < 13)

UPDATE - aktualizuje data

UPDATE users set city = 'Brno', wtf = 'FIT' where (surname = 'Novák')

INSERT - vkládáme nová data

INSERT into users (name, surname, age) values ('Jiri', 'Janda', 22)

SELECT - nejčastější příkaz

  • V příkazu vybíráme s jakými sloupci v jaké tabulce (tabulkách) budeme pracovat a dale podminku která řádky mají být zpracovány.
  • nejkomplikovanější příkaz, má spoustu volitelných podčástí
  • where - společný i pro ostatní kromě insertu. Obsahuje podmínky, mohou se spojovat and / or, používat závorky atd.
  • group by - Seskupení záznamů znamená, že shrneme informace několika záznamů do jednoho záznamu. K tomuto používáme GROUP BY, za kterým uvedeme název sloupce, podle kterého se mají záznamy seskupit (všechny záznamy, které mají stejnou hodnotu tohoto sloupce, se sloučí do jednoho záznamu).
  • having - je velmi podobná podmínce WHERE. Rozdíl je v tom, že podmínka WHERE omezuje ještě neseskupené záznamy a podmínka HAVING omezuje seskupené záznamy. Další rozdíl je, že podmínka HAVING se musí týkat sloupce, který má konstantní hodnotu a nebo agregační funkce. Př. (HAVING `pocet` > 5)
  • order by - specifikuje, podle čeho budou výstupní data seřazena - sloupec asc / desc
  • distinct Uvedením klíčového slova DISTINCT se eliminují duplicitní řádky „Ze kterých měst jsou klienti spořitelny?“ SELECT DISTINCT město FROM Klient

Diskuze

Vložte svůj komentář
 
temata/33-relacni_datovy_model_sql/main.1301345272.txt.gz · Poslední úprava: 2011/03/28 22:47 autor: sgs
Recent changes RSS feed Debian Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki