Przejdź do głównej treści
eLearner.app
Moduł 2 · Lekcja 1 z 45/57 w kursie~6 min
Lekcje modułu (1/4)

Limitowanie z LIMIT

Zapytanie może łatwo zwrócić tysiące (lub miliony) wierszy. Kiedy tylko ty chcesz podgląd — lub gdy chcesz zbudować ranking z pierwszej N — używasz klauzula LIMIT:

SQL
SELECT <colonne>
FROM   <tabella>
[WHERE  <condizione>]
[ORDER BY <colonna> [ASC|DESC]]
LIMIT  <numero>;

LIMIT znajduje się na końcu zapytania i obcina wynik do podaną liczbę wierszy. Samo zbudowanie rankingu nie wystarczy: bez ORDER BY, SQL nie gwarantuje, które wiersze otrzymasz z powrotem. Zatem złoty zasada brzmi:

Górne N = ORDER BY + LIMIT.

Przykłady

SQL
-- Le prime 5 righe della tabella, in ordine arbitrario:
SELECT * FROM employees LIMIT 5;

-- I 3 dipendenti più pagati:
SELECT first_name, last_name, salary
FROM employees
ORDER BY salary DESC
LIMIT 3;

-- I 5 progetti con il budget più basso:
SELECT name, budget
FROM projects
ORDER BY budget ASC
LIMIT 5;

Spróbuj

Ćwiczenie#sql.m2.l1.e1
Próby: 0Ładowanie...

Pokaż nazwisko (nazwisko) i wynagrodzenie (wynagrodzenie) 3 najlepiej opłacanych pracowników, od najwyższej do najniższej.

Ładowanie edytora...
Pokaż wskazówkę

Aby znaleźć się w rankingu, potrzebujesz ORDER BY wynagrodzenia DESC i LIMIT 3, aby zatrzymać się w pierwszej trójce.

Rozwiązanie dostępne po 3 próbach

Przejrzyj ćwiczenie

Ćwiczenie#sql.m2.l1.e2
Próby: 0Ładowanie...

Pomiń 2 najlepiej opłacanych pracowników i pokaż 3 bezpośrednio następujących po sobie (3., 4. i 5. w malejącym rankingu wynagrodzeń). Użyj PRZESUNIĘCIA po LIMIT.

Ładowanie edytora...
Pokaż wskazówkę

OFFSET 2 pomija pierwsze 2 rzędy, LIMIT 3 zajmuje kolejne 3.

Rozwiązanie dostępne po 3 próbach