Package mondrian.rolap
Class RolapNativeSql
- java.lang.Object
-
- mondrian.rolap.RolapNativeSql
-
public class RolapNativeSql extends Object
Creates SQL from parse tree nodes. Currently it creates the SQL that accesses a measure for the ORDER BY that is generated for a TopCount.- Since:
- Nov 17, 2005
- Author:
- av
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) classRolapNativeSql.CalculatedMemberSqlCompilerCompiles the underlying expression of a calculated member.(package private) static classRolapNativeSql.CompositeSqlCompilerImplementation ofRolapNativeSql.SqlCompilerthat uses chain of responsibility to find a matching sql compiler.(package private) classRolapNativeSql.FunCallSqlCompilerCompiles a funcall, e.g.(package private) classRolapNativeSql.FunCallSqlCompilerBaseContains utility methods to compile FunCall expressions into SQL.(package private) classRolapNativeSql.IifSqlCompilerCompiles anIIF(cond, val1, val2)expression into SQLCASE WHEN cond THEN val1 ELSE val2 END.(package private) classRolapNativeSql.InfixOpSqlCompilerCompiles an infix operator like addition into SQL like(a + b).(package private) classRolapNativeSql.IsEmptySqlCompilerCompiles anIsEmpty(measure)expression into SQLmeasure is null.(package private) classRolapNativeSql.MatchingSqlCompilerCompiles a MATCHES MDX operator into SQL regular expression match.(package private) classRolapNativeSql.MemberSqlCompilerBase class to remove MemberScalarExp.(package private) classRolapNativeSql.NumberSqlCompilerCompiles a numeric literal to SQL.(package private) classRolapNativeSql.ParenthesisSqlCompilerShortcut for ().(package private) static interfaceRolapNativeSql.SqlCompilerTranslates an expression into SQL(package private) classRolapNativeSql.StoredMeasureSqlCompilerCompiles a measure into SQL, the measure will be aggregated likesum(measure).(package private) classRolapNativeSql.UnaryOpSqlCompilerShortcut for an unary operator like NOT(a).
-
Field Summary
Fields Modifier and Type Field Description (package private) AggStaraggStar(package private) RolapNativeSql.CompositeSqlCompilerbooleanCompiler(package private) Evaluatorevaluator(package private) RolapNativeSql.CompositeSqlCompilernumericCompiler(package private) RolapLevelrolapLevel(package private) RolapStoredMeasurestoredMeasure
-
Constructor Summary
Constructors Constructor Description RolapNativeSql(SqlQuery sqlQuery, AggStar aggStar, Evaluator evaluator, RolapLevel rolapLevel)Creates a RolapNativeSql.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringgenerateFilterCondition(Exp exp)StringgenerateTopCountOrderBy(Exp exp)Generates an aggregate of a measure, e.g.RolapStoredMeasuregetStoredMeasure()
-
-
-
Field Detail
-
numericCompiler
RolapNativeSql.CompositeSqlCompiler numericCompiler
-
booleanCompiler
RolapNativeSql.CompositeSqlCompiler booleanCompiler
-
storedMeasure
RolapStoredMeasure storedMeasure
-
aggStar
final AggStar aggStar
-
evaluator
final Evaluator evaluator
-
rolapLevel
final RolapLevel rolapLevel
-
-
Constructor Detail
-
RolapNativeSql
public RolapNativeSql(SqlQuery sqlQuery, AggStar aggStar, Evaluator evaluator, RolapLevel rolapLevel)
Creates a RolapNativeSql.- Parameters:
sqlQuery- the query which is needed for different SQL dialects - it is not modified
-
-
Method Detail
-
generateTopCountOrderBy
public String generateTopCountOrderBy(Exp exp)
Generates an aggregate of a measure, e.g. "sum(Store_Sales)" for TopCount. The returned expr will be added to the select list and to the order by clause.
-
getStoredMeasure
public RolapStoredMeasure getStoredMeasure()
-
-