static class RolapNativeTopCount.TopCountConstraint extends RolapNativeSet.SetConstraint
| Modifier and Type | Field and Description | 
|---|---|
(package private) boolean | 
ascending  | 
(package private) Exp | 
orderByExpr  | 
(package private) Integer | 
topCount  | 
args| Constructor and Description | 
|---|
RolapNativeTopCount.TopCountConstraint(int count,
                                      CrossJoinArg[] args,
                                      RolapEvaluator evaluator,
                                      Exp orderByExpr,
                                      boolean ascending)  | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
addConstraint(SqlQuery sqlQuery,
             RolapCube baseCube,
             AggStar aggStar)
Called from LevelMembers: restricts the SQL resultset to the current
 context. 
 | 
Object | 
getCacheKey()
returns a key to cache the result 
 | 
protected boolean | 
isJoinRequired()
Returns whether a join with the fact table is required. 
 | 
getMemberChildrenConstraintaddLevelConstraint, addMemberConstraint, addMemberConstraint, getEvaluator, isValidContext, isValidContextpublic RolapNativeTopCount.TopCountConstraint(int count,
                                      CrossJoinArg[] args,
                                      RolapEvaluator evaluator,
                                      Exp orderByExpr,
                                      boolean ascending)
protected boolean isJoinRequired()
If there is a crossjoin, we need to join the fact table - even if the evaluator context is empty.
TopCount always needs to join the fact table because we want to evaluate the top count expression which involves a fact.
isJoinRequired in class RolapNativeSet.SetConstraintpublic void addConstraint(SqlQuery sqlQuery, RolapCube baseCube, AggStar aggStar)
SqlContextConstraintaddConstraint in interface TupleConstraintaddConstraint in class RolapNativeSet.SetConstraintsqlQuery - the query to modifybaseCube - base cube for virtual cube constraintsaggStar - aggregate star to usepublic Object getCacheKey()
RolapNativeSet.SetConstraintgetCacheKey in interface SqlConstraintgetCacheKey in class RolapNativeSet.SetConstraint