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
Author:
jhyde
  • Field Details

  • Constructor Details

    • LucidDbDialect

      public LucidDbDialect(Connection connection) throws SQLException
      Creates a LucidDbDialect.
      Parameters:
      connection - Connection
      Throws:
      SQLException - on error
  • Method Details

    • 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 for
      valueString - 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