Spark SQL----Sampling Queries采样查询
- 一、描述
- 二、语法
- 三、例子
一、描述
TABLESAMPLE语句用于对表进行采样。它支持以下采样方法:
- TABLESAMPLE(x行):将表格向下采样到给定的行数。
- TABLESAMPLE(x百分比):将表格向下采样到给定的百分比。请注意,百分比定义为0到100之间的数字。
- TABLESAMPLE(BUCKET x OUT OF y):对表格进行采样,X表示要选择的桶的数量,Y表示总的桶数量。
注意:TABLESAMPLE返回请求的行数或分数的近似值。
二、语法
TABLESAMPLE ({ integer_expression | decimal_expression } PERCENT)| TABLESAMPLE ( integer_expression ROWS )| TABLESAMPLE ( BUCKET integer_expression OUT OF integer_expression )
三、例子
SELECT * FROM test;
+--+----+
|id|name|
+--+----+
| 5|Alex|
| 8|Lucy|
| 2|Mary|
| 4|Fred|
| 1|Lisa|
| 9|Eric|
|10|Adam|
| 6|Mark|
| 7|Lily|
| 3|Evan|
+--+----+SELECT * FROM test TABLESAMPLE (50 PERCENT);
+--+----+
|id|name|
+--+----+
| 5|Alex|
| 2|Mary|
| 4|Fred|
| 9|Eric|
|10|Adam|
| 3|Evan|
+--+----+SELECT * FROM test TABLESAMPLE (5 ROWS);
+--+----+
|id|name|
+--+----+
| 5|Alex|
| 8|Lucy|
| 2|Mary|
| 4|Fred|
| 1|Lisa|
+--+----+SELECT * FROM test TABLESAMPLE (BUCKET 4 OUT OF 10);
+--+----+
|id|name|
+--+----+
| 8|Lucy|
| 2|Mary|
| 9|Eric|
| 6|Mark|
+--+----+