Tabnine Logo
org.apache.calcite.sql.type
Code IndexAdd Tabnine to your IDE (free)

How to use org.apache.calcite.sql.type

Best Java code snippets using org.apache.calcite.sql.type (Showing top 20 results out of 315)

origin: apache/incubator-druid

 ApproxCountDistinctSqlAggFunction()
 {
  super(
    NAME,
    null,
    SqlKind.OTHER_FUNCTION,
    ReturnTypes.explicit(SqlTypeName.BIGINT),
    InferTypes.VARCHAR_1024,
    OperandTypes.ANY,
    SqlFunctionCategory.STRING,
    false,
    false
  );
 }
}
origin: apache/incubator-druid

 QuantileSqlAggFunction()
 {
  super(
    NAME,
    null,
    SqlKind.OTHER_FUNCTION,
    ReturnTypes.explicit(SqlTypeName.DOUBLE),
    null,
    OperandTypes.or(
      OperandTypes.and(
        OperandTypes.sequence(SIGNATURE1, OperandTypes.ANY, OperandTypes.LITERAL),
        OperandTypes.family(SqlTypeFamily.ANY, SqlTypeFamily.NUMERIC)
      ),
      OperandTypes.and(
        OperandTypes.sequence(SIGNATURE2, OperandTypes.ANY, OperandTypes.LITERAL, OperandTypes.LITERAL),
        OperandTypes.family(SqlTypeFamily.ANY, SqlTypeFamily.NUMERIC, SqlTypeFamily.EXACT_NUMERIC)
      )
    ),
    SqlFunctionCategory.NUMERIC,
    false,
    false
  );
 }
}
origin: apache/hive

private HiveFloorDate(String name) {
 super(name, SqlKind.FLOOR, ReturnTypes.ARG0_OR_EXACT_NO_SCALE, null,
   OperandTypes.sequence(
     "'" + SqlKind.FLOOR + "(<DATE> TO <TIME_UNIT>)'\n"
     + "'" + SqlKind.FLOOR + "(<TIME> TO <TIME_UNIT>)'\n"
     + "'" + SqlKind.FLOOR + "(<TIMESTAMP> TO <TIME_UNIT>)'",
     OperandTypes.DATETIME,
     OperandTypes.ANY),
   SqlFunctionCategory.NUMERIC);
}
origin: apache/hive

private static CalciteUDFInfo getUDFInfo(String hiveUdfName,
  ImmutableList<RelDataType> calciteArgTypes, RelDataType calciteRetType) {
 CalciteUDFInfo udfInfo = new CalciteUDFInfo();
 udfInfo.udfName = hiveUdfName;
 udfInfo.returnTypeInference = ReturnTypes.explicit(calciteRetType);
 udfInfo.operandTypeInference = InferTypes.explicit(calciteArgTypes);
 ImmutableList.Builder<SqlTypeFamily> typeFamilyBuilder = new ImmutableList.Builder<SqlTypeFamily>();
 for (RelDataType at : calciteArgTypes) {
  typeFamilyBuilder.add(Util.first(at.getSqlTypeName().getFamily(), SqlTypeFamily.ANY));
 }
 udfInfo.operandTypeChecker = OperandTypes.family(typeFamilyBuilder.build());
 return udfInfo;
}
origin: apache/storm

final public SqlIdentifier CollectionsTypeName() throws ParseException {
 jj_consume_token(MULTISET);
   {if (true) return new SqlIdentifier(
     SqlTypeName.MULTISET.name(), getPos());}
 throw new Error("Missing return statement in function");
}
origin: apache/storm

  @Override
  public RelDataType toSql(RelDataType type) {
    if (type instanceof JavaType) {
      JavaType javaType = (JavaType) type;
      SqlTypeName sqlTypeName = JavaToSqlTypeConversionRules.instance().lookup(javaType.getJavaClass());
      if (sqlTypeName == null) {
        sqlTypeName = SqlTypeName.ANY;
      }
      return createTypeWithNullability(createSqlType(sqlTypeName), type.isNullable());
    }
    return super.toSql(type);
  }
}
origin: apache/incubator-druid

 public SqlFunction build()
 {
  return new SqlFunction(
    name,
    kind,
    Preconditions.checkNotNull(returnTypeInference, "returnTypeInference"),
    null,
    OperandTypes.family(
      Preconditions.checkNotNull(operandTypes, "operandTypes"),
      i -> i + 1 > requiredOperands
    ),
    functionCategory
  );
 }
}
origin: apache/hive

private List<RexNode> rewriteToDateChildren(List<RexNode> childRexNodeLst) {
 List<RexNode> newChildRexNodeLst = new ArrayList<RexNode>();
 assert childRexNodeLst.size() == 1;
 RexNode child = childRexNodeLst.get(0);
 if (SqlTypeUtil.isDatetime(child.getType()) || SqlTypeUtil.isInterval(child.getType())) {
  newChildRexNodeLst.add(child);
 } else {
  newChildRexNodeLst.add(makeCast(SqlTypeName.TIMESTAMP, child));
 }
 return newChildRexNodeLst;
}
origin: apache/hive

private SqlKind getOp(RexCall call) {
 SqlKind op = call.getKind();
 if (call.getKind().equals(SqlKind.OTHER_FUNCTION)
   && SqlTypeUtil.inBooleanFamily(call.getType())) {
  SqlOperator sqlOp = call.getOperator();
  String opName = (sqlOp != null) ? sqlOp.getName() : "";
  if (opName.equalsIgnoreCase("in")) {
   op = SqlKind.IN;
  }
 }
 return op;
}
origin: apache/hive

 private boolean areTypesCompatible(RelDataType type1, RelDataType type2) {
  if (type1.equals(type2)) {
   return true;
  }
  SqlTypeName sqlType1 = type1.getSqlTypeName();
  if (sqlType1 != null) {
   return sqlType1.equals(type2.getSqlTypeName());
  }
  return false;
 }
}
origin: apache/flink

private SqlNode maybeCast(SqlNode node, RelDataType currentType,
  RelDataType desiredType) {
  return currentType.equals(desiredType)
    || (currentType.isNullable() != desiredType.isNullable()
        && typeFactory.createTypeWithNullability(currentType,
    desiredType.isNullable()).equals(desiredType))
    ? node
    : SqlStdOperatorTable.CAST.createCall(SqlParserPos.ZERO,
    node, SqlTypeUtil.convertTypeToSpec(desiredType));
}
origin: apache/hive

private HiveExtractDate(String name) {
 super(name, SqlKind.EXTRACT,
   ReturnTypes.cascade(ReturnTypes.INTEGER, SqlTypeTransforms.FORCE_NULLABLE), null,
   OperandTypes.INTERVALINTERVAL_INTERVALDATETIME,
   SqlFunctionCategory.SYSTEM);
}
origin: apache/drill

private static CalciteUDFInfo getUDFInfo(String hiveUdfName,
  ImmutableList<RelDataType> calciteArgTypes, RelDataType calciteRetType) {
 CalciteUDFInfo udfInfo = new CalciteUDFInfo();
 udfInfo.udfName = hiveUdfName;
 udfInfo.returnTypeInference = ReturnTypes.explicit(calciteRetType);
 udfInfo.operandTypeInference = InferTypes.explicit(calciteArgTypes);
 ImmutableList.Builder<SqlTypeFamily> typeFamilyBuilder = new ImmutableList.Builder<SqlTypeFamily>();
 for (RelDataType at : calciteArgTypes) {
  typeFamilyBuilder.add(Util.first(at.getSqlTypeName().getFamily(), SqlTypeFamily.ANY));
 }
 udfInfo.operandTypeChecker = OperandTypes.family(typeFamilyBuilder.build());
 return udfInfo;
}
origin: apache/incubator-druid

public OperatorBuilder nullableReturnType(final SqlTypeName typeName)
{
 this.returnTypeInference = ReturnTypes.explicit(
   factory -> Calcites.createSqlTypeWithNullability(factory, typeName, true)
 );
 return this;
}
origin: apache/storm

final public SqlIdentifier CollectionsTypeName() throws ParseException {
 jj_consume_token(MULTISET);
   {if (true) return new SqlIdentifier(
     SqlTypeName.MULTISET.name(), getPos());}
 throw new Error("Missing return statement in function");
}
origin: apache/drill

private HiveFloorDate(String name) {
 super(name, SqlKind.FLOOR, ReturnTypes.ARG0_OR_EXACT_NO_SCALE, null,
   OperandTypes.sequence(
     "'" + SqlKind.FLOOR + "(<DATE> TO <TIME_UNIT>)'\n"
     + "'" + SqlKind.FLOOR + "(<TIME> TO <TIME_UNIT>)'\n"
     + "'" + SqlKind.FLOOR + "(<TIMESTAMP> TO <TIME_UNIT>)'",
     OperandTypes.DATETIME,
     OperandTypes.ANY),
   SqlFunctionCategory.NUMERIC);
}
origin: apache/flink

protected void validateWhereOrOn(
  SqlValidatorScope scope,
  SqlNode condition,
  String clause) {
  validateNoAggs(aggOrOverOrGroupFinder, condition, clause);
  inferUnknownTypes(
    booleanType,
    scope,
    condition);
  condition.validate(this, scope);
  final RelDataType type = deriveType(scope, condition);
  if (!SqlTypeUtil.inBooleanFamily(type)) {
    throw newValidationError(condition, RESOURCE.condMustBeBoolean(clause));
  }
}
origin: apache/kylin

SqlAggFunction createCustomAggFunction(String funcName, RelDataType returnType, Class<?> customAggFuncClz) {
  RelDataTypeFactory typeFactory = getCluster().getTypeFactory();
  SqlIdentifier sqlIdentifier = new SqlIdentifier(funcName, new SqlParserPos(1, 1));
  AggregateFunction aggFunction = AggregateFunctionImpl.create(customAggFuncClz);
  List<RelDataType> argTypes = new ArrayList<RelDataType>();
  List<SqlTypeFamily> typeFamilies = new ArrayList<SqlTypeFamily>();
  for (FunctionParameter o : aggFunction.getParameters()) {
    final RelDataType type = o.getType(typeFactory);
    argTypes.add(type);
    typeFamilies.add(Util.first(type.getSqlTypeName().getFamily(), SqlTypeFamily.ANY));
  }
  return new SqlUserDefinedAggFunction(sqlIdentifier, ReturnTypes.explicit(returnType),
      InferTypes.explicit(argTypes), OperandTypes.family(typeFamilies), aggFunction, false, false,
      typeFactory);
}
origin: apache/incubator-druid

public OperatorBuilder returnType(final SqlTypeName typeName)
{
 this.returnTypeInference = ReturnTypes.explicit(
   factory -> Calcites.createSqlType(factory, typeName)
 );
 return this;
}
origin: apache/hive

@Override
public AggregateCall other(RelDataTypeFactory typeFactory, AggregateCall e) {
 RelDataType countRetType = typeFactory.createTypeWithNullability(typeFactory.createSqlType(SqlTypeName.BIGINT), true);
 return AggregateCall.create(
  new HiveSqlCountAggFunction(isDistinct, ReturnTypes.explicit(countRetType), operandTypeInference, operandTypeChecker),
  false, ImmutableIntList.of(), -1, countRetType, "count");
}
org.apache.calcite.sql.type

Most used classes

  • SqlTypeName
    Enumeration of the type names which can be used to construct a SQL type. Rationale for this class's
  • SqlTypeUtil
    Contains utility methods used during SQL validation or type derivation.
  • ReturnTypes
    A collection of return-type inference strategies.
  • OperandTypes
    Strategies for checking operand types.This class defines singleton instances of strategy objects for
  • SqlTypeFactoryImpl
    SqlTypeFactoryImpl provides a default implementation of RelDataTypeFactory which supports SQL types.
  • BasicSqlType,
  • SqlOperandCountRanges,
  • InferTypes,
  • ArraySqlType,
  • JavaToSqlTypeConversionRules,
  • SqlOperandTypeChecker,
  • SqlTypeAssignmentRules,
  • IntervalSqlType,
  • ObjectSqlType,
  • TableFunctionReturnTypeInference,
  • AssignableOperandTypeChecker,
  • LiteralOperandTypeChecker,
  • SqlOperandTypeInference,
  • SqlReturnTypeInference
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now