Array ( [0] => 15536630 [id] => 15536630 [1] => cswiki [site] => cswiki [2] => LIMIT [uri] => LIMIT [3] => [img] => [4] => [day_avg] => [5] => [day_diff] => [6] => [day_last] => [7] => [day_prev_last] => [8] => [oai] => [9] => [is_good] => [10] => [object_type] => [11] => 0 [has_content] => 0 [12] => [oai_cs_optimisticky] => ) Array ( [0] => '''LIMIT''' je syntaktická konstrukce příkazu [[SQL]] pro omezení počtu řádků vrácených příkazem [[SELECT]]. [1] => [2] => [3] => SELECT... LIMIT [offset,]počet_řádků [4] => [5] => [6] => Většina databázových strojů na místě počtu řádků a offsetu nedovoluje mít sloupce, ale jen číselné literály popř. lokální proměnné v uložených procedurách. [7] => [8] => == Příklady použití == [9] => Tabulky mohou obsahovat veliké množství (v některých případech až desítky milionů) řádků. Chceme-li vypsat jen omezené množství řádků, použijeme v příkazu klauzuli LIMIT s jedním parametrem. [10] => [11] => [12] => SELECT * FROM zamestnanci LIMIT 100 [13] => [14] => [15] => Vypíše nejvýše prvních 100 řádků z tabulky zamestnanci. Je-li v tabulce méně záznamů než tento limit, výpis skončí po vypsání celé tabulky. [16] => [17] => [18] => SELECT * FROM zamestnanci ORDER BY plat DESC LIMIT 3 [19] => [20] => [21] => Vypíše tři zaměstnance s nejvyšším platem, seřazené podle něj vzestupně. [22] => [23] => Klausule LIMIT se dá taktéž použít pro určení tzv. offsetu [24] => [25] => [26] => SELECT * FROM zamestnanci ORDER BY plat DESC LIMIT 9,1 [27] => [28] => [29] => Vypíše zaměstnance s 10. nejvyšším platem. Jsou-li za klíčovým slovem LIMIT uvedena dvě čísla, pak je limitem druhé číslo v pořadí. První je pak offset, který určuje, kolikátý řádek se má z výsledku vráceném příkazem SELECT, vzít a počítá se od nuly (tedy 0=první, 1=druhý, …). Použití offsetu má většinou význam u výsledků příkazů SELECT, které jsou podle něčeho řazeny. [30] => [31] => LIMIT lze použít i s příkazem [[UPDATE]]. [32] => [33] => UPDATE soutezici SET postupuji_do_finale=0; [34] => UPDATE soutezici SET postupuji_do_finale=1 ORDER BY RAND() LIMIT 10; [35] => [36] => Pokud má tabulka soutezici sloupeček postupuji_do_finale, pak první výše uvedený příkaz tento sloupeček u všech vynuluje a druhý příkaz jej nastaví pro 10 náhodně vybraných – nahodilost zajistí ORDER BY RAND(). [37] => [38] => == Podpora == [39] => Klauzule LIMIT je v rámci standardu SQL'92. Podporují ji databáze jako např. MySQL, ProgreSQL, SQLite. [40] => [41] => '''Microsoft Access''' má pro vrácení omezeného počtu řádků klauzuli '''TOP''' s použitím: [42] => [43] => SELECT TOP počet_záznamů ... FROM tabulka. [44] => [45] => V tomto případě ale nemá možnost určení offsetu, takže pro to potřebuje de facto dva příkazy, složené do sebe. Místo počtu záznamů může za TOP být v některých databázích procento z celkového počtu záznamů. [46] => [47] => Databáze '''[[Oracle Database|Oracle]]''' taktéž nepodporují klauzuli LIMIT, ale mají jiný (možná ještě lepší) prostředek, jak určit, které řádky se mají z dotazu vrátit, a to přes podporu prvku ROWNUM, které supluje pořadí vracených řádků. Výše uvedený příklad se zaměstnancem s 10. nejvyšším plateb by tak byl v Oracle proveden příkazem: [48] => [49] => [50] => SELECT * FROM zamestnanci WHERE ROWNUM=10 ORDER BY plat DESC [51] => [52] => [53] => == Související články == [54] => * [[SELECT#Omezení počtu zobrazených řádků|SELECT → Omezení počtu zobrazených řádků]] [55] => {{SQL}} [56] => [57] => [[Kategorie:SQL]] [] => )
good wiki

LIMIT

LIMIT je syntaktická konstrukce příkazu SQL pro omezení počtu řádků vrácených příkazem SELECT. SELECT.

More about us

About

Expert Team

Vivamus eget neque lacus. Pellentesque egauris ex.

Award winning agency

Lorem ipsum, dolor sit amet consectetur elitorceat .

10 Year Exp.

Pellen tesque eget, mauris lorem iupsum neque lacus.

You might be interested in

,'SQL','SELECT','UPDATE','Oracle Database','SELECT#Omezení počtu zobrazených řádků','Kategorie:SQL'