Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Применяется к:
Databricks SQL
Databricks Runtime
Инструкция TABLESAMPLE используется для выборки отношения.
Синтаксис
TABLESAMPLE ( { percentage PERCENT ) |
num_rows ROWS |
BUCKET fraction OUT OF total } )
[ REPEATABLE ( seed ) ]
Параметры
percentage PERCENTКонстанта
percentageINTEGER или DECIMAL от 0 до 100, указывающая процент строк таблицы для выборки.num_rows ROWSКонстантное положительное выражение INTEGER
num_rows, указывающее абсолютное количество строк из всех строк для выборки.BUCKET fraction OUT OF totalКонстанта
fractionINTEGER, указывающая часть из константыtotalINTEGER для выборки.REPEATABLE ( seed )Область применения:
Databricks SQL
Databricks Runtime 11.3 LTS и вышеНеобязательная положительная константа целое число
seed, используемая для всегда получения одного и того же набора строк. Используйте это предложение, если вы хотите повторно выполнить запрос несколько раз, и вы ожидаете один и тот же набор примеров строк.
Примечание.
-
TABLESAMPLEвозвращает приблизительное количество запрошенных строк или частей. - Всегда используйте
TABLESAMPLE (percent PERCENT), если случайность важна.TABLESAMPLE (num_rows ROWS)реализуется не просто как случайная выборка, но с помощьюLIMIT. -
TABLESAMPLEне поддерживает применение фильтров, поскольку выборка предшествует применению любых других фильтров, например, условийWHERE.
Примеры
> CREATE TEMPORARY VIEW test(id, name) AS
VALUES ( 1, 'Lisa'),
( 2, 'Mary'),
( 3, 'Evan'),
( 4, 'Fred'),
( 5, 'Alex'),
( 6, 'Mark'),
( 7, 'Lily'),
( 8, 'Lucy'),
( 9, 'Eric'),
(10, 'Adam');
> SELECT * FROM test;
5 Alex
8 Lucy
2 Mary
4 Fred
1 Lisa
9 Eric
10 Adam
6 Mark
7 Lily
3 Evan
> SELECT * FROM test TABLESAMPLE (30 PERCENT) REPEATABLE (123);
1 Lisa
2 Mary
3 Evan
5 Alex
8 Lucy
> SELECT * FROM test TABLESAMPLE (5 ROWS);
5 Alex
8 Lucy
2 Mary
4 Fred
1 Lisa
> SELECT * FROM test TABLESAMPLE (BUCKET 4 OUT OF 10);
8 Lucy
2 Mary
9 Eric
6 Mark