Перейти до основного вмісту
Модуль 2 · Урок 1 із 45/57 у курсі~6 min
Модульні уроки (1/4)

Обмеження за допомогою LIMIT

Запит може легко повернути тисячі (або мільйони) рядків. Коли ти тільки хочете попередній перегляд — або коли ви хочете побудувати топ-N рейтингу — використовуйте пункт LIMIT:

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

LIMIT йде в кінець запиту та скорочує результат до задану кількість рядків. Самостійно для побудови рейтингу недостатньо: без ORDER BY, SQL не гарантує, які рядки ви отримаєте назад. Отже, золотий правило таке:

Top-N = ORDER BY + LIMIT.

Приклади

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;

Спробуйте

вправи#sql.m2.l1.e1
Спроби: 0Завантаження…

Покажіть прізвище (last_name) і зарплату (salary) 3 найбільш високооплачуваних працівників, від найбільш високооплачуваного до найменш оплачуваного.

Завантаження редактора…
Показати підказку

Вам потрібно ORDER BY salary DESC для рейтингу та LIMIT 3, щоб зупинитися на першій трійці.

Рішення доступне після 3 спроб

Повторна вправа

вправи#sql.m2.l1.e2
Спроби: 0Завантаження…

Пропустіть 2 найвищооплачуваних працівників і покажіть 3 наступних (3-е, 4-е та 5-е місце в рейтингу за рівнем заробітної плати). Використовуйте OFFSET після LIMIT.

Завантаження редактора…
Показати підказку

OFFSET 2 пропускає перші 2 рядки, LIMIT 3 приймає наступні 3.

Рішення доступне після 3 спроб