Class DruidTypeSystem
java.lang.Object
org.apache.druid.sql.calcite.planner.DruidTypeSystem
- All Implemented Interfaces:
org.apache.calcite.rel.type.RelDataTypeSystem
public class DruidTypeSystem
extends Object
implements org.apache.calcite.rel.type.RelDataTypeSystem
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intDruid uses millisecond precision for timestamps internally.static final DruidTypeSystemstatic final org.apache.calcite.rel.type.RelDataTypeFactoryFields inherited from interface org.apache.calcite.rel.type.RelDataTypeSystem
DEFAULT -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.calcite.rel.type.RelDataTypederiveAvgAggType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType argumentType) org.apache.calcite.rel.type.RelDataTypederiveCovarType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType arg0Type, org.apache.calcite.rel.type.RelDataType arg1Type) org.apache.calcite.rel.type.RelDataTypederiveFractionalRankType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory) org.apache.calcite.rel.type.RelDataTypederiveRankType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory) org.apache.calcite.rel.type.RelDataTypederiveSumType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType argumentType) intgetDefaultPrecision(org.apache.calcite.sql.type.SqlTypeName typeName) getLiteral(org.apache.calcite.sql.type.SqlTypeName typeName, boolean isPrefix) intintintgetMaxPrecision(org.apache.calcite.sql.type.SqlTypeName typeName) intgetMaxScale(org.apache.calcite.sql.type.SqlTypeName typeName) intgetNumTypeRadix(org.apache.calcite.sql.type.SqlTypeName typeName) booleanisAutoincrement(org.apache.calcite.sql.type.SqlTypeName typeName) booleanisCaseSensitive(org.apache.calcite.sql.type.SqlTypeName typeName) booleanbooleanMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.calcite.rel.type.RelDataTypeSystem
deriveDecimalDivideType, deriveDecimalModType, deriveDecimalMultiplyType, deriveDecimalPlusType, deriveTimeFrameSet, shouldUseDoubleMultiplication
-
Field Details
-
INSTANCE
-
TYPE_FACTORY
public static final org.apache.calcite.rel.type.RelDataTypeFactory TYPE_FACTORY -
DEFAULT_TIMESTAMP_PRECISION
public static final int DEFAULT_TIMESTAMP_PRECISIONDruid uses millisecond precision for timestamps internally. This is also the default at the SQL layer.- See Also:
-
-
Method Details
-
getMaxScale
public int getMaxScale(org.apache.calcite.sql.type.SqlTypeName typeName) - Specified by:
getMaxScalein interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
getDefaultPrecision
public int getDefaultPrecision(org.apache.calcite.sql.type.SqlTypeName typeName) - Specified by:
getDefaultPrecisionin interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
getMaxPrecision
public int getMaxPrecision(org.apache.calcite.sql.type.SqlTypeName typeName) - Specified by:
getMaxPrecisionin interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
getMaxNumericScale
public int getMaxNumericScale()- Specified by:
getMaxNumericScalein interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
getMaxNumericPrecision
public int getMaxNumericPrecision()- Specified by:
getMaxNumericPrecisionin interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
getLiteral
- Specified by:
getLiteralin interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
isCaseSensitive
public boolean isCaseSensitive(org.apache.calcite.sql.type.SqlTypeName typeName) - Specified by:
isCaseSensitivein interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
isAutoincrement
public boolean isAutoincrement(org.apache.calcite.sql.type.SqlTypeName typeName) - Specified by:
isAutoincrementin interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
getNumTypeRadix
public int getNumTypeRadix(org.apache.calcite.sql.type.SqlTypeName typeName) - Specified by:
getNumTypeRadixin interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
deriveSumType
public org.apache.calcite.rel.type.RelDataType deriveSumType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType argumentType) - Specified by:
deriveSumTypein interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
deriveAvgAggType
public org.apache.calcite.rel.type.RelDataType deriveAvgAggType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType argumentType) - Specified by:
deriveAvgAggTypein interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
deriveCovarType
public org.apache.calcite.rel.type.RelDataType deriveCovarType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory, org.apache.calcite.rel.type.RelDataType arg0Type, org.apache.calcite.rel.type.RelDataType arg1Type) - Specified by:
deriveCovarTypein interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
deriveFractionalRankType
public org.apache.calcite.rel.type.RelDataType deriveFractionalRankType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory) - Specified by:
deriveFractionalRankTypein interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
deriveRankType
public org.apache.calcite.rel.type.RelDataType deriveRankType(org.apache.calcite.rel.type.RelDataTypeFactory typeFactory) - Specified by:
deriveRankTypein interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
isSchemaCaseSensitive
public boolean isSchemaCaseSensitive()- Specified by:
isSchemaCaseSensitivein interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-
shouldConvertRaggedUnionTypesToVarying
public boolean shouldConvertRaggedUnionTypesToVarying()- Specified by:
shouldConvertRaggedUnionTypesToVaryingin interfaceorg.apache.calcite.rel.type.RelDataTypeSystem
-