Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:
Databricks SQL
Databricks Runtime
Pernyataan TABLESAMPLE digunakan untuk mengambil sampel relasi.
Sintaks
TABLESAMPLE ( { percentage PERCENT ) |
num_rows ROWS |
BUCKET fraction OUT OF total } )
[ REPEATABLE ( seed ) ]
Parameter-parameternya
percentage PERCENTKonstanta BILANGAN BULAT atau DESIMAL
percentageantara 0 dan 100 yang menentukan persentase baris tabel yang disampel.num_rows ROWSEkspresi BILANGAN BULAT positif konstan
num_rowsyang menetapkan jumlah absolut baris dari semua baris yang akan diambil sampelnya.BUCKET fraction OUT OF totalKonstanta BILANGAN BULAT
fractionyang menentukan bagian dari konstanta BILANGAN BULATtotaluntuk dijadikan sampel.REPEATABLE ( seed )Berlaku untuk:
Databricks SQL
Databricks Runtime 11.3 LTS ke atasKonstanta BILANGAN BULAT positif opsional
seed, digunakan untuk selalu menghasilkan set baris yang sama. Gunakan klausul ini saat Anda ingin menerbitkan ulang kueri beberapa kali, dan Anda mengharapkan set baris sampel yang sama.
Catatan
-
TABLESAMPLEmengembalikan perkiraan jumlah baris atau pecahan yang diminta. - Selalu gunakan
TABLESAMPLE (percent PERCENT)jika keacakan itu penting.TABLESAMPLE (num_rows ROWS)bukan sampel acak sederhana tetapi diimplementasikan menggunakanLIMIT. -
TABLESAMPLEtidak mendukung filter pushdown karena pengambilan sampel dilakukan sebelum penerapan filter lainnya, seperti klausaWHERE.
Contoh
> 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