|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.esper.eql.expression.ResultSetProcessorFactory
public class ResultSetProcessorFactory
Factory for output processors. Output processors process the result set of a join or of a view and apply aggregation/grouping, having and some output limiting logic.
The instance produced by the factory depends on the presence of aggregation functions in the select list, the presence and nature of the group-by clause.
In case (1) and (2) there are no aggregation functions in the select clause.
Case (3) is without group-by and with aggregation functions and without non-aggregated properties in the select list:
select sum(volume). Always produces one row for new and old data, aggregates without grouping.
Case (4) is without group-by and with aggregation functions but with non-aggregated properties in the select list:
select price, sum(volume). Produces a row for each event, aggregates without grouping.
Case (5) is with group-by and with aggregation functions and all selected properties are grouped-by. in the select list:
select customerId, sum(volume) group by customerId. Produces a old and new data row for each group changed, aggregates with grouping, see
ResultSetProcessorRowPerGroup
Case (6) is with group-by and with aggregation functions and only some selected properties are grouped-by. in the select list:
select customerId, supplierId, sum(volume) group by customerId. Produces row for each event, aggregates with grouping.
Constructor Summary | |
---|---|
ResultSetProcessorFactory()
|
Method Summary | |
---|---|
static ResultSetProcessor |
getProcessor(java.util.List<SelectExprElement> selectionList,
java.util.List<ExprNode> groupByNodes,
ExprNode optionalHavingNode,
StreamTypeService typeService,
OutputLimitSpec outputLimitSpec)
Returns the result set process for the given select expression, group-by clause and having clause given a set of types describing each stream in the from-clause. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ResultSetProcessorFactory()
Method Detail |
---|
public static ResultSetProcessor getProcessor(java.util.List<SelectExprElement> selectionList, java.util.List<ExprNode> groupByNodes, ExprNode optionalHavingNode, StreamTypeService typeService, OutputLimitSpec outputLimitSpec) throws ExprValidationException
selectionList
- - represents select clause and thus the expression nodes listed in the select, or empty if wildcardgroupByNodes
- - represents the expressions to group-by events based on event properties, or empty if no group-by was specifiedoptionalHavingNode
- - represents the having-clause boolean filter criteriatypeService
- - for information about the streams in the from clauseoutputLimitSpec
- - indicates whether to output all or only the last event.
ExprValidationException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |