mondrian.spi.impl
Class LucidDbDialect
java.lang.Object
mondrian.spi.impl.JdbcDialectImpl
mondrian.spi.impl.LucidDbDialect
- All Implemented Interfaces:
- Dialect
- Direct Known Subclasses:
- SqlStreamDialect
public class LucidDbDialect
- extends JdbcDialectImpl
Implementation of Dialect
for the LucidDB database.
- Since:
- Nov 23, 2008
- Version:
- $Id: //open/mondrian/src/main/mondrian/spi/impl/LucidDbDialect.java#3 $
- Author:
- jhyde
Method Summary |
boolean |
allowsMultipleDistinctSqlMeasures()
Returns whether this Dialect has performant support of distinct SQL
measures in the same query. |
boolean |
needsExponent(Object value,
String valueString)
If Double values need to include additional exponent in its string
represenation. |
boolean |
supportsMultiValueInExpr()
Returns true if this dialect supports multi-value IN expressions. |
boolean |
supportsUnlimitedValueList()
Returns whether this Dialect places no limit on the number
of rows which can appear as elements of an IN or VALUES
expression. |
Methods inherited from class mondrian.spi.impl.JdbcDialectImpl |
allowsAs, allowsCompoundCountDistinct, allowsCountDistinct, allowsDdl, allowsDialectSharing, allowsFromQuery, allowsMultipleCountDistinct, allowsOrderByAlias, allowsSelectNotInGroupBy, appendHintsAfterFromClause, caseWhenElse, deduceIdentifierQuoteString, deduceMaxColumnNameLength, deduceProductName, deduceProductVersion, deduceReadOnly, deduceSupportedResultSetStyles, deduceSupportsSelectNotInGroupBy, generateInline, generateInlineForAnsi, generateInlineGeneric, generateOrderItem, getDatabaseProduct, getMaxColumnNameLength, getNullCollation, getProduct, getQuoteIdentifierString, quote, quoteBooleanLiteral, quoteDateLiteral, quoteDateLiteral, quoteIdentifier, quoteIdentifier, quoteIdentifier, quoteIdentifier, quoteNumericLiteral, quoteStringLiteral, quoteTimeLiteral, quoteTimestampLiteral, requiresAliasForFromQuery, requiresGroupByAlias, requiresOrderByAlias, requiresUnionOrderByExprToBeInSelectClause, requiresUnionOrderByOrdinal, supportsGroupByExpressions, supportsGroupingSets, supportsOrderByNullsLast, supportsResultSetConcurrency, toString, toUpper |
FACTORY
public static final JdbcDialectFactory FACTORY
LucidDbDialect
public LucidDbDialect(Connection connection)
throws SQLException
- Creates a LucidDbDialect.
- Parameters:
connection
- Connection
- Throws:
SQLException
allowsMultipleDistinctSqlMeasures
public boolean allowsMultipleDistinctSqlMeasures()
- Description copied from interface:
Dialect
- Returns whether this Dialect has performant support of distinct SQL
measures in the same query.
- Specified by:
allowsMultipleDistinctSqlMeasures
in interface Dialect
- Overrides:
allowsMultipleDistinctSqlMeasures
in class JdbcDialectImpl
- Returns:
- whether this dialect supports multiple count(distinct subquery)
measures in one query.
needsExponent
public boolean needsExponent(Object value,
String valueString)
- Description copied from interface:
Dialect
- If Double values need to include additional exponent in its string
represenation. This is to make sure that Double literals will be
interpreted as doubles by LucidDB.
- Specified by:
needsExponent
in interface Dialect
- Overrides:
needsExponent
in class JdbcDialectImpl
- Parameters:
value
- Double value to generate string forvalueString
- java string representation for this value.
- Returns:
- whether an additional exponent "E0" needs to be appended
supportsUnlimitedValueList
public boolean supportsUnlimitedValueList()
- Description copied from interface:
Dialect
- Returns whether this Dialect places no limit on the number
of rows which can appear as elements of an IN or VALUES
expression.
- Specified by:
supportsUnlimitedValueList
in interface Dialect
- Overrides:
supportsUnlimitedValueList
in class JdbcDialectImpl
- Returns:
- whether value list length is unlimited
supportsMultiValueInExpr
public boolean supportsMultiValueInExpr()
- Description copied from interface:
Dialect
- Returns true if this dialect supports multi-value IN expressions.
E.g.,
WHERE (col1, col2) IN ((val1a, val2a), (val1b, val2b))
- Specified by:
supportsMultiValueInExpr
in interface Dialect
- Overrides:
supportsMultiValueInExpr
in class JdbcDialectImpl
- Returns:
- true if the dialect supports multi-value IN expressions