概述

TABLESAMPLE 是 Lakehouse 平台提供的数据采样方法,支持基于概率或固定行数的随机采样。包含 SYSTEM(文件级)和 ROW(行级)两种采样策略,满足不同场景的性能与精度需求。

语法

SELECT <column_list>
FROM <table_name>
  TABLESAMPLE [ROW | SYSTEM] ( { <probability>  | <num> ROWS } )
[ ...其他子句... ]

参数说明

采样类型

类型描述
ROW行级随机:逐行独立判断,结果行数精准,适合小数据集
SYSTEM文件级随机:按文件块随机筛选,性能更高但结果可能波动,适合大数据场景
(默认)未指定时自动选择 SYSTEM 模式

采样量

格式描述
probabilityT按百分比采样(0~100),如 30
<数字> ROWS指定采样行数,如 5 ROWS

使用示例

基础采样

CREATE  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');
 -- 随机抽取30%数据(SYSTEM模式)
SELECT * FROM test  TABLESAMPLE (30 ) ;
 -- 随机抽取5行数据(SYSTEM模式)
SELECT * FROM test   TABLESAMPLE (5 ROWS);

-- 精确抽取5行(ROW模式)
SELECT * FROM employee TABLESAMPLE ROW (5 ROWS);

联系我们
预约咨询
微信咨询
电话咨询