ClickHouse/docs/ru/sql-reference/statements/select/limit.md
Eugene Klimov 2a3292cf00
add ORDER BY ... WITH FILL, LIMIT... WITH TIES documentation to RU and EN locale (#12410)
* add ORDER BY ... WITH FILL documentation to RU and EN locale

Signed-off-by: Slach <bloodjazman@gmail.com>

* Update docs/en/sql-reference/statements/select/limit.md

* Update docs/en/sql-reference/statements/select/limit.md

* Update docs/ru/sql-reference/statements/select/order-by.md

* Update docs/en/sql-reference/statements/select/limit.md

* Update docs/en/sql-reference/statements/select/order-by.md

* Update docs/en/sql-reference/statements/select/order-by.md

* Update docs/en/sql-reference/statements/select/order-by.md

* Update docs/en/sql-reference/statements/select/order-by.md

* Update docs/en/sql-reference/statements/select/order-by.md

* Update docs/ru/sql-reference/statements/select/limit.md

Co-authored-by: Ivan Blinkov <github@blinkov.ru>
2020-07-14 00:52:40 +03:00

2.2 KiB
Raw Blame History

toc_title
LIMIT

Секция LIMIT

LIMIT m позволяет выбрать из результата первые m строк.

LIMIT n, m позволяет выбрать из результата первые m строк после пропуска первых n строк. Синтаксис LIMIT m OFFSET n также поддерживается.

n и m должны быть неотрицательными целыми числами.

При отсутствии секции ORDER BY, однозначно сортирующей результат, результат может быть произвольным и может являться недетерминированным.

Модификатор LIMIT ... WITH TIES

Когда вы установите модификатор WITH TIES для LIMIT n[,m] и указываете ORDER BY expr_list, вы получите первые n или n,m строк и дополнительно все строки с теми же самым значениями полей указанных в ORDER BY равными строке на позиции n для LIMIT n или m для LIMIT n,m.

Этот модификатор также может быть скомбинирован с ORDER BY ... WITH FILL модификатором

Для примера следующий запрос

SELECT * FROM (
    SELECT number%50 AS n FROM numbers(100)
) ORDER BY n LIMIT 0,5

возвращает

┌─n─┐
│ 0 │
│ 0 │
│ 1 │
│ 1 │
│ 2 │
└───┘

но после применения модификатора WITH TIES

SELECT * FROM (
    SELECT number%50 AS n FROM numbers(100)
) ORDER BY n LIMIT 0,5 WITH TIES

возвращает другой набор строк

┌─n─┐
│ 0 │
│ 0 │
│ 1 │
│ 1 │
│ 2 │
│ 2 │
└───┘

поскольку строка на позиции 6 имеет тоже самое значение "2" для поля n что и строка на позиции 5