public class AggregateGroupByRequest extends Object implements org.apache.avro.generic.IndexedRecord
GPUdb.aggregateGroupByRaw(AggregateGroupByRequest)
.
offset
and limit
parameters. For example, to get 10 groups with the largest counts the inputs would be: limit=10,
options={"sort_order":"descending", "sort_by":"value"}. options
can be used to customize behavior of this call e.g.
filtering or sorting the results. To group by 'x' and 'y' and compute the number of objects within each group, use
column_names=['x','y','count(*)']. To also compute the sum of 'z' over each group, use
column_names=['x','y','count(*)','sum(z)']. Available aggregation functions are: 'count(*)', 'sum', 'min', 'max', 'avg', 'mean',
'stddev', 'stddev_pop', 'stddev_samp', 'var', 'var_pop', 'var_samp', 'arg_min', 'arg_max' and 'count_distinct'. The response is
returned as a dynamic schema. For details see: dynamic
schemas documentation. If the 'result_table' option is provided then the results are stored in a table with the name given in
the option and the results are not returned in the response.
The Raw version of this method can be used to specify the encoding scheme of the response.Modifier and Type | Class and Description |
---|---|
static class |
AggregateGroupByRequest.Encoding
Specifies the encoding for returned records.
|
static class |
AggregateGroupByRequest.Options
Optional parameters.
|
Constructor and Description |
---|
AggregateGroupByRequest()
Constructs an AggregateGroupByRequest object with default parameters.
|
AggregateGroupByRequest(String tableName,
List<String> columnNames,
long offset,
long limit,
Map<String,String> options)
Constructs an AggregateGroupByRequest object with the specified parameters.
|
AggregateGroupByRequest(String tableName,
List<String> columnNames,
long offset,
long limit,
String encoding,
Map<String,String> options)
Constructs an AggregateGroupByRequest object with the specified parameters.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj)
The Raw version of this method can be used to specify the encoding scheme of the response.
|
Object |
get(int index)
This method supports the Avro framework and is not intended to be called directly by the user.
|
static org.apache.avro.Schema |
getClassSchema()
This method supports the Avro framework and is not intended to be called directly by the user.
|
List<String> |
getColumnNames()
The Raw version of this method can be used to specify the encoding scheme of the response.
|
String |
getEncoding()
The Raw version of this method can be used to specify the encoding scheme of the response.
|
long |
getLimit()
The Raw version of this method can be used to specify the encoding scheme of the response.
|
long |
getOffset()
The Raw version of this method can be used to specify the encoding scheme of the response.
|
Map<String,String> |
getOptions()
The Raw version of this method can be used to specify the encoding scheme of the response.
|
org.apache.avro.Schema |
getSchema()
This method supports the Avro framework and is not intended to be called directly by the user.
|
String |
getTableName()
The Raw version of this method can be used to specify the encoding scheme of the response.
|
int |
hashCode()
The Raw version of this method can be used to specify the encoding scheme of the response.
|
void |
put(int index,
Object value)
This method supports the Avro framework and is not intended to be called directly by the user.
|
AggregateGroupByRequest |
setColumnNames(List<String> columnNames)
The Raw version of this method can be used to specify the encoding scheme of the response.
|
AggregateGroupByRequest |
setEncoding(String encoding)
The Raw version of this method can be used to specify the encoding scheme of the response.
|
AggregateGroupByRequest |
setLimit(long limit)
The Raw version of this method can be used to specify the encoding scheme of the response.
|
AggregateGroupByRequest |
setOffset(long offset)
The Raw version of this method can be used to specify the encoding scheme of the response.
|
AggregateGroupByRequest |
setOptions(Map<String,String> options)
The Raw version of this method can be used to specify the encoding scheme of the response.
|
AggregateGroupByRequest |
setTableName(String tableName)
The Raw version of this method can be used to specify the encoding scheme of the response.
|
String |
toString()
The Raw version of this method can be used to specify the encoding scheme of the response.
|
public AggregateGroupByRequest()
public AggregateGroupByRequest(String tableName, List<String> columnNames, long offset, long limit, Map<String,String> options)
tableName
- Name of the table on which the operation will be performed. Must be a valid table/view/collection in GPUdb.columnNames
- List of one or more column names, expressions, and aggregate expressions. Must include at least one
'grouping' column or expression. If no aggregate is included, count(*) will be computed as a default.offset
- A positive integer indicating the number of initial results to skip (this can be useful for paging through the
results). The minimum allowed value is 0. The maximum allowed value is MAX_INT.limit
- A positive integer indicating the maximum number of results to be returned Or END_OF_SET (-9999) to indicate
that the max number of results should be returned.options
- Optional parameters.
public AggregateGroupByRequest(String tableName, List<String> columnNames, long offset, long limit, String encoding, Map<String,String> options)
tableName
- Name of the table on which the operation will be performed. Must be a valid table/view/collection in GPUdb.columnNames
- List of one or more column names, expressions, and aggregate expressions. Must include at least one
'grouping' column or expression. If no aggregate is included, count(*) will be computed as a default.offset
- A positive integer indicating the number of initial results to skip (this can be useful for paging through the
results). The minimum allowed value is 0. The maximum allowed value is MAX_INT.limit
- A positive integer indicating the maximum number of results to be returned Or END_OF_SET (-9999) to indicate
that the max number of results should be returned.encoding
- Specifies the encoding for returned records. Values: binary, json.options
- Optional parameters.
public static org.apache.avro.Schema getClassSchema()
public String getTableName()
public AggregateGroupByRequest setTableName(String tableName)
tableName
- Name of the table on which the operation will be performed. Must be a valid table/view/collection in GPUdb.this
to mimic the builder pattern.public List<String> getColumnNames()
public AggregateGroupByRequest setColumnNames(List<String> columnNames)
columnNames
- List of one or more column names, expressions, and aggregate expressions. Must include at least one
'grouping' column or expression. If no aggregate is included, count(*) will be computed as a default.this
to mimic the builder pattern.public long getOffset()
public AggregateGroupByRequest setOffset(long offset)
offset
- A positive integer indicating the number of initial results to skip (this can be useful for paging through the
results). The minimum allowed value is 0. The maximum allowed value is MAX_INT.this
to mimic the builder pattern.public long getLimit()
public AggregateGroupByRequest setLimit(long limit)
limit
- A positive integer indicating the maximum number of results to be returned Or END_OF_SET (-9999) to indicate
that the max number of results should be returned.this
to mimic the builder pattern.public String getEncoding()
public AggregateGroupByRequest setEncoding(String encoding)
encoding
- Specifies the encoding for returned records. Values: binary, json.this
to mimic the builder pattern.public Map<String,String> getOptions()
public AggregateGroupByRequest setOptions(Map<String,String> options)
options
- Optional parameters.
this
to mimic the builder pattern.public org.apache.avro.Schema getSchema()
getSchema
in interface org.apache.avro.generic.GenericContainer
public Object get(int index)
get
in interface org.apache.avro.generic.IndexedRecord
index
- the position of the field to getIndexOutOfBoundsException
public void put(int index, Object value)
put
in interface org.apache.avro.generic.IndexedRecord
index
- the position of the field to setvalue
- the value to setIndexOutOfBoundsException
public boolean equals(Object obj)
public String toString()
Copyright © 2016. All rights reserved.