net.sf.saffron.rel
Class AggregateRel

java.lang.Object
  |
  +--net.sf.saffron.rel.SaffronRel
        |
        +--net.sf.saffron.rel.SingleRel
              |
              +--net.sf.saffron.rel.AggregateRel
Direct Known Subclasses:
JavaAggregateRel

public class AggregateRel
extends SingleRel

AggregateRel is a relational operator which eliminates duplicates and computes totals.

Since:
3 February, 2002
Version:
$Id: //open/saffron/src/net/sf/saffron/rel/AggregateRel.java#4 $
Author:
jhyde

Nested Class Summary
static class AggregateRel.Call
           
 
Field Summary
protected  AggregateRel.Call[] aggCalls
           
protected  int groupCount
           
 
Fields inherited from class net.sf.saffron.rel.SingleRel
child
 
Fields inherited from class net.sf.saffron.rel.SaffronRel
cluster, digest, emptyArray, id, nextId, rowType
 
Constructor Summary
AggregateRel(VolcanoCluster cluster, SaffronRel child, int groupCount, AggregateRel.Call[] aggCalls)
           
 
Method Summary
 Object clone()
           
 PlanCost computeSelfCost(SaffronPlanner planner)
          Returns the cost of this plan (not including children).
protected  SaffronType deriveRowType()
           
 AggregateRel.Call[] getAggCalls()
           
 int getGroupCount()
           
 
Methods inherited from class net.sf.saffron.rel.SingleRel
childrenAccept, explain, getInputs, getRows, replaceInput
 
Methods inherited from class net.sf.saffron.rel.SaffronRel
computeDigest, getChildExps, getCluster, getConvention, getCorrelVariable, getId, getInput, getOrCreateCorrelVariable, getQualifier, getQuery, getRelTypeName, getRowType, getTable, getVariablesStopped, implement, implementFieldAccess, isAccessTo, isDistinct, onRegister, recomputeDigest, register, registerCorrelVariable, setCorrelVariable, toString
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

aggCalls

protected AggregateRel.Call[] aggCalls

groupCount

protected int groupCount
Constructor Detail

AggregateRel

public AggregateRel(VolcanoCluster cluster,
                    SaffronRel child,
                    int groupCount,
                    AggregateRel.Call[] aggCalls)
Method Detail

getAggCalls

public AggregateRel.Call[] getAggCalls()

getGroupCount

public int getGroupCount()

clone

public Object clone()
Specified by:
clone in class SaffronRel

computeSelfCost

public PlanCost computeSelfCost(SaffronPlanner planner)
Description copied from class: SaffronRel
Returns the cost of this plan (not including children). The base implementation throws an error; derived classes should override.

Overrides:
computeSelfCost in class SaffronRel

deriveRowType

protected SaffronType deriveRowType()
Overrides:
deriveRowType in class SingleRel

SourceForge.net_Logo