Vyhledávání

From Wikivyuka
Jump to: navigation, search

Příkaz SELECT slouží k vyhledání dat v rámci databáze.

Povinná jsou pouze dvě klíčová slova SELECT (co chceme zobrazit na výstupu) a FROM (odkud chceme vybírat).

SELECT {* | sloupec} 
FROM <tabulka>

Za klíčovým slovem SELECT je uvedena možnost volby - pokud chceme na výstupu po zpracování dotazu všechny sloupce tabulky, není nutno je všechny vypisovat, ale použijeme znak *. Chceme-li jeden či několik vybraných sloupců, je nutno je za SELECT uvést.

Syntaxe celého příkazu pak vypadá následovně:

SELECT
  [ALL | DISTINCT]
  {[tabulka. | alias. | pohled.]{* | sloupec | sloupec AS alias}
  | AVG([tabulka. | alias. | pohled.]<sloupec>) [AS <alias>]
  | MIN([tabulka. | alias. | pohled.]<sloupec>) [AS <alias>]
  | MAX([tabulka. | alias. | pohled.]<sloupec>) [AS <alias>]
  | COUNT([tabulka. | alias. | pohled.]<* | sloupec>) [AS <alias>]
  }[,...n]

  [INTO nazev_nove_tabulky]

  FROM <tabulka> [AS <alias>][,... n]
  [
  [INNER | FULL] JOIN <tabulka> ON <spojovaci podminka>
  | <LEFT | RIGHT> OUTER JOIN <tabulka> ON <spojovaci podminka>
  | CROSS JOIN <sloupce>
  [AS <alias>] 
  [,... n]
  ]

  [WHERE <podmínky>
   | <sloupec> <operator> <sloupec | hodnota> 
   | <sloupec> <operator> <sloupec | hodnota> <AND | OR | NOT> <sloupec> <operator> <sloupec | hodnota> 
   | <sloupec> BETWEEN <hodnota> AND <hodnota>
   | <sloupec> LIKE <regularni vyraz>
   | <sloupec> IN <vycet hodnot>
   | <sloupec | vyraz> <operator> ANY | SOME (poddotaz)
   | EXISTS (poddotaz)]

   
  [GROUP BY <nazev sloupce>[,... n]]
  [HAVING <omezujici podminka postavena na vysledcich klauzule GROUP BY>]
  [ORDER BY <sloupec>[,... n] [ASC | DESC]]

[UNION <SELECT dotaz>]

Postupně si ozřejmíme použití uvedených částí příkazu.

Popis implementace SQL SELECT v Oracle lze najít zde.

Hlavní stránka předmětu