Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 蜂巢分层抽样_Sql_Hive_Qubole - Fatal编程技术网

Sql 蜂巢分层抽样

Sql 蜂巢分层抽样,sql,hive,qubole,Sql,Hive,Qubole,下面返回由X值分层的a和X列的10%样本 换句话说,如果X取[X0,X1]的值,则返回以下各项的并集: X=X0的行的10% X=X1的行的10% 如何根据多个列(如X、Y)的元组值对查询进行分层 例如,如果X取值[X0,X1],Y取值[Y0,Y1],我想得到一个样本,它是以下各项的并集: 其中X=X0和Y=Y0的行的10% 其中X=X0和Y=Y1的行的10% 其中X=X1和Y=Y0的行的10% X=X1和Y=Y1的行的10% < >我将使用上面的方法,但是使用您想考虑的列的散列。 sele

下面返回由X值分层的a和X列的10%样本

换句话说,如果X取[X0,X1]的值,则返回以下各项的并集:

X=X0的行的10% X=X1的行的10% 如何根据多个列(如X、Y)的元组值对查询进行分层

例如,如果X取值[X0,X1],Y取值[Y0,Y1],我想得到一个样本,它是以下各项的并集:

其中X=X0和Y=Y0的行的10% 其中X=X0和Y=Y1的行的10% 其中X=X1和Y=Y0的行的10% X=X1和Y=Y1的行的10%
< >我将使用上面的方法,但是使用您想考虑的列的散列。

  select A, X from(
  select A, 
      count(*) over (partition by X) as cnt, 
      rank() over (partition by X order by rand()) as rnk
      from my_table) table 
  where rnk <= cnt*0.1