SQL kurz

SQL HOME Úvod do SQL Syntaxe SQL SQL Select SQL Select Distinct SQL Kde SQL A nebo ne Pořadí SQL podle SQL Vložit do Hodnoty SQL Null Aktualizace SQL SQL Odstranit SQL Select Top SQL Min a Max Počet SQL, průměr, součet SQL Like Zástupné znaky SQL SQL In SQL mezi Aliasy SQL SQL se připojí SQL Vnitřní spojení SQL Levé připojení SQL Right Join Plné připojení k SQL SQL Self Join SQL Union SQL Group By SQL mít SQL existuje SQL Any, All SQL Select Into SQL Vložit do výběru Případ SQL Funkce SQL Null SQL uložené procedury Komentáře SQL Operátoři SQL

SQL databáze

SQL Vytvořit DB SQL Drop DB SQL Backup DB Vytvořit tabulku SQL SQL Drop Table SQL Alter Table Omezení SQL SQL Not Null Jedinečný SQL Primární klíč SQL cizí klíč SQL Kontrola SQL Výchozí SQL SQL index Automatické zvýšení SQL SQL data SQL pohledy SQL Injection SQL Hosting SQL datové typy

SQL reference

Klíčová slova SQL Funkce MySQL Funkce serveru SQL Funkce MS Access SQL Quick Ref

Příklady SQL

Příklady SQL SQL kvíz SQL cvičení SQL certifikát

Klauzule SQL TOP, LIMIT, FETCH FIRST nebo ROWNUM


Klauzule SQL SELECT TOP

Klauzule SELECT TOPse používá k určení počtu záznamů, které se mají vrátit.

Klauzule SELECT TOPje užitečná u velkých tabulek s tisíci záznamy. Vrácení velkého počtu záznamů může ovlivnit výkon.

Poznámka: Ne všechny databázové systémy tuto SELECT TOPklauzuli podporují. MySQL podporuje LIMITklauzuli pro výběr omezeného počtu záznamů, zatímco Oracle používá a . FETCH FIRST n ROWS ONLYROWNUM

Syntaxe SQL Server / MS Access:

SELECT TOP number|percent column_name(s)
FROM table_name
WHERE condition;

Syntaxe MySQL:

SELECT column_name(s)
FROM table_name
WHERE condition
LIMIT number;

Syntaxe Oracle 12:

SELECT column_name(s)
FROM table_name
ORDER BY column_name(s)
FETCH FIRST number ROWS ONLY;

Starší syntaxe Oracle:

SELECT column_name(s)
FROM table_name
WHERE ROWNUM <= number;

Starší syntaxe Oracle (s ORDER BY):

SELECT *
FROM (SELECT column_name(s) FROM table_name ORDER BY column_name(s))
WHERE ROWNUM <= number;

Demo databáze

Níže je uveden výběr z tabulky „Zákazníci“ v ukázkové databázi Northwind:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden


Příklady SQL TOP, LIMIT a FETCH FIRST

Následující příkaz SQL vybere první tři záznamy z tabulky "Zákazníci" (pro SQL Server/MS Access):

Příklad

SELECT TOP 3 * FROM Customers;

Následující příkaz SQL ukazuje ekvivalentní příklad pro MySQL:

Příklad

SELECT * FROM Customers
LIMIT 3;

Následující příkaz SQL ukazuje ekvivalentní příklad pro Oracle:

Příklad

SELECT * FROM Customers
FETCH FIRST 3 ROWS ONLY;

Příklad SQL TOP PROCENT

Následující příkaz SQL vybere prvních 50 % záznamů z tabulky "Zákazníci" (pro SQL Server/MS Access):

Příklad

SELECT TOP 50 PERCENT * FROM Customers;

Následující příkaz SQL ukazuje ekvivalentní příklad pro Oracle:

Příklad

SELECT * FROM Customers
FETCH FIRST 50 PERCENT ROWS ONLY;

PŘIDEJTE klauzuli WHE

Následující příkaz SQL vybere první tři záznamy z tabulky "Zákazníci", kde země je "Německo" (pro SQL Server/MS Access):

Příklad

SELECT TOP 3 * FROM Customers
WHERE Country='Germany';

Následující příkaz SQL ukazuje ekvivalentní příklad pro MySQL:

Příklad

SELECT * FROM Customers
WHERE Country='Germany'
LIMIT 3;

Následující příkaz SQL ukazuje ekvivalentní příklad pro Oracle:

Příklad

SELECT * FROM Customers
WHERE Country='Germany'
FETCH FIRST 3 ROWS ONLY;