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) class
RolapNativeSql.CalculatedMemberSqlCompiler
Compiles the underlying expression of a calculated member.(package private) static class
RolapNativeSql.CompositeSqlCompiler
Implementation ofRolapNativeSql.SqlCompiler
that uses chain of responsibility to find a matching sql compiler.(package private) class
RolapNativeSql.FunCallSqlCompiler
Compiles a funcall, e.g.(package private) class
RolapNativeSql.FunCallSqlCompilerBase
Contains utility methods to compile FunCall expressions into SQL.(package private) class
RolapNativeSql.IifSqlCompiler
Compiles anIIF(cond, val1, val2)
expression into SQLCASE WHEN cond THEN val1 ELSE val2 END
.(package private) class
RolapNativeSql.InfixOpSqlCompiler
Compiles an infix operator like addition into SQL like(a + b)
.(package private) class
RolapNativeSql.IsEmptySqlCompiler
Compiles anIsEmpty(measure)
expression into SQLmeasure is null
.(package private) class
RolapNativeSql.MatchingSqlCompiler
Compiles a MATCHES MDX operator into SQL regular expression match.(package private) class
RolapNativeSql.MemberSqlCompiler
Base class to remove MemberScalarExp.(package private) class
RolapNativeSql.NumberSqlCompiler
Compiles a numeric literal to SQL.(package private) class
RolapNativeSql.ParenthesisSqlCompiler
Shortcut for ().(package private) static interface
RolapNativeSql.SqlCompiler
Translates an expression into SQL(package private) class
RolapNativeSql.StoredMeasureSqlCompiler
Compiles a measure into SQL, the measure will be aggregated likesum(measure)
.(package private) class
RolapNativeSql.UnaryOpSqlCompiler
Shortcut for an unary operator like NOT(a).
-
Field Summary
Fields Modifier and Type Field Description (package private) AggStar
aggStar
(package private) RolapNativeSql.CompositeSqlCompiler
booleanCompiler
(package private) Evaluator
evaluator
(package private) RolapNativeSql.CompositeSqlCompiler
numericCompiler
(package private) RolapLevel
rolapLevel
(package private) RolapStoredMeasure
storedMeasure
-
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 String
generateFilterCondition(Exp exp)
String
generateTopCountOrderBy(Exp exp)
Generates an aggregate of a measure, e.g.RolapStoredMeasure
getStoredMeasure()
-
-
-
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()
-
-