Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:
Databricks SQL
Databricks Runtime
Příkaz TABLESAMPLE slouží k vzorkování relace.
Syntaxe
TABLESAMPLE ( { percentage PERCENT ) |
num_rows ROWS |
BUCKET fraction OUT OF total } )
[ REPEATABLE ( seed ) ]
Parametry
percentage PERCENTCeločíselná nebo desetinná konstanta
percentagemezi 0 a 100 určující procento řádků tabulky, které se mají vzorkovat.num_rows ROWSKonstantní kladný celočíselný výraz
num_rowsurčující absolutní počet řádků z celkového počtu řádků, které se mají vzorkovat.BUCKET fraction OUT OF totalCeločíselná konstanta
fractionurčující část z celočíselné konstantytotal, která se má vzorkovat.REPEATABLE ( seed )Platí pro:
Databricks SQL
Databricks Runtime 11.3 LTS a novějšíVolitelná kladná celočíselná konstanta
seed, která se používá k vždy vytvoření stejné sady řádků. Tuto klauzuli použijte, pokud chcete dotaz opakovaně znovu použít a očekáváte stejnou sadu vzorek řádků.
Poznámka:
-
TABLESAMPLEvrátí přibližný počet požadovaných řádků nebo zlomků. - Vždy používejte
TABLESAMPLE (percent PERCENT), pokud je náhodnost důležitá.TABLESAMPLE (num_rows ROWS)není jednoduchý náhodný vzorek, ale místo toho je implementován pomocíLIMIT. -
TABLESAMPLEnepodporuje prosazování filtrů, protože vzorkování předchází použití jakýchkoli jiných filtrů, jako jsou například klauzuleWHERE.
Příklady
> 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