Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:
Databricks SQL
Databricks Runtime
De TABLESAMPLE instructie wordt gebruikt om de relatie te samplen.
Syntaxis
TABLESAMPLE ( { percentage PERCENT ) |
num_rows ROWS |
BUCKET fraction OUT OF total } )
[ REPEATABLE ( seed ) ]
Parameterwaarden
percentage PERCENTEen GEHEEL GETAL of DECIMAAL tussen 0 en 100 dat aangeeft welk percentage van de rijen van de tabel moet worden gesampled.
num_rows ROWSEen constante positieve INTEGER-expressie
num_rowsdie een absoluut aantal rijen opgeeft van alle rijen die moeten worden genomen.BUCKET fraction OUT OF totalEen INTEGER-constante
fractiondie aangeeft welk deel van de INTEGER-constantetotalmoet worden bemonsterd.REPEATABLE ( seed )Van toepassing op:
Databricks SQL
Databricks Runtime 11.3 LTS en hogerEen optionele positieve integer-constante
seed, die wordt gebruikt om altijd dezelfde set rijen te produceren. Gebruik deze component als u de query meerdere keren opnieuw wilt uitzetten en u verwacht dezelfde set voorbeeldrijen.
Notitie
-
TABLESAMPLEretourneert het geschatte aantal rijen of het gevraagde gedeelte. -
TABLESAMPLE (percent PERCENT)Gebruik altijd als willekeurigheid belangrijk is.TABLESAMPLE (num_rows ROWS)is geen eenvoudige willekeurige steekproef, maar wordt in plaats daarvan geïmplementeerd met behulp vanLIMIT. -
TABLESAMPLEbiedt geen ondersteuning voor het verplaatsen van filters, aangezien de steekproef voorafgaat aan de toepassing van andere filters, zoalsWHEREclausules.
Voorbeelden
> 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