org.eigenbase.sql
Class SqlSampleSpec

java.lang.Object
  extended by org.eigenbase.sql.SqlSampleSpec
Direct Known Subclasses:
SqlSampleSpec.SqlSubstitutionSampleSpec, SqlSampleSpec.SqlTableSampleSpec

public abstract class SqlSampleSpec
extends Object

Specification of a SQL sample.

For example, the query

SELECT *
 FROM emp TABLESAMPLE SUBSTITUTE('medium')
declares a sample which is created using createNamed(java.lang.String).

A sample is not a SqlNode. To include it in a parse tree, wrap it as a literal, viz: SqlLiteral.createSample(SqlSampleSpec, SqlParserPos).


Nested Class Summary
static class SqlSampleSpec.SqlSubstitutionSampleSpec
           
static class SqlSampleSpec.SqlTableSampleSpec
           
 
Constructor Summary
protected SqlSampleSpec()
           
 
Method Summary
static SqlSampleSpec createNamed(String name)
          Creates a sample which substitutes one relation for another.
static SqlSampleSpec createTableSample(boolean isBernoulli, float samplePercentage)
          Creates a table sample without repeatability.
static SqlSampleSpec createTableSample(boolean isBernoulli, float samplePercentage, int repeatableSeed)
          Creates a table sample with repeatability.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SqlSampleSpec

protected SqlSampleSpec()
Method Detail

createNamed

public static SqlSampleSpec createNamed(String name)
Creates a sample which substitutes one relation for another.


createTableSample

public static SqlSampleSpec createTableSample(boolean isBernoulli,
                                              float samplePercentage)
Creates a table sample without repeatability.

Parameters:
isBernoulli - true if Bernoulli style sampling is to be used; false for implementation specific sampling
samplePercentage - likelihood of a row appearing in the sample

createTableSample

public static SqlSampleSpec createTableSample(boolean isBernoulli,
                                              float samplePercentage,
                                              int repeatableSeed)
Creates a table sample with repeatability.

Parameters:
isBernoulli - true if Bernoulli style sampling is to be used; false for implementation specific sampling
samplePercentage - likelihood of a row appearing in the sample
repeatableSeed - seed value used to reproduce the same sample