FirebirdSQL logo
 COMMENTSОператоры процедурного SQL (PSQL) 

Особенности использования FIRST и SKIP

  • Разрешается использовать SKIP 0 – в этом случае 0 записей будет пропущено;

  • В случае использования FIRST 0 будет возвращён пустой набор записей;

  • Отрицательные значения FIRST и SKIP вызовут ошибку;

  • Если указанное в SKIP значение превышает размер результирующего набора данных, то вернётся пустой набор данных;

  • Если число записей в наборе данных (или остаток после применения SKIP) меньше, чем заданное в FIRST значение, то соответственно меньшее количество записей будет возвращено;

  • Любой аргумент FIRST или SKIP, который не является целым числом или параметром SQL должен был заключён в круглые скобки. Это, означает, что в случае использования вложенной команды SELECT в качестве параметра для FIRST или SKIP, он должен быть вложен в две пары скобок.

Примеры использования FIRST и SKIP

Следующий запрос вернёт первые 10 имён из таблицы PEOPLE (имена также будут отсортированы, см.ниже раздел ORDER BY):

SELECT FIRST 10 id, name
FROM People
ORDER BY name ASC

Следующий запрос вернёт все записи из таблицы PEOPLE, за исключением первых 10 имён:

SELECT SKIP 10 id, name
FROM People
ORDER BY name ASC

А этот запрос вернёт последние 10 записей (обратите внимание на двойные скобки):

SELECT SKIP ((SELECT COUNT(*) - 10 FROM People))
  id, name
FROM People
ORDER BY name ASC

Этот запрос вернёт строки 81-100 из таблицы PEOPLE:

SELECT FIRST 20 SKIP 80 id, name
FROM People
ORDER BY name ASC
См. также:

“FETCH`, OFFSET”, `ROWS.