Class SqlToRexConverter

java.lang.Object
org.apache.flink.table.planner.calcite.SqlToRexConverter

@Internal public class SqlToRexConverter extends Object
Converts SQL expressions to RexNode.
  • Constructor Summary

    Constructors
    Constructor
    Description
    SqlToRexConverter(FlinkPlannerImpl planner, org.apache.calcite.sql.SqlDialect sqlDialect, org.apache.calcite.rel.type.RelDataType inputRowType, org.apache.calcite.rel.type.RelDataType outputType)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.apache.calcite.rex.RexNode
    Converts a SQL expression to a RexNode expression.
    org.apache.calcite.rex.RexNode
    convertToRexNode(org.apache.calcite.sql.SqlNode sqlNode)
    Converts a SqlNode to a RexNode expression.
    org.apache.calcite.rex.RexNode[]
    Converts an array of SQL expressions to an array of RexNode expressions.
    expand(String expr)
    Converts the given SQL expression string to an expanded string with fully qualified function calls and escaped identifiers.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • SqlToRexConverter

      public SqlToRexConverter(FlinkPlannerImpl planner, org.apache.calcite.sql.SqlDialect sqlDialect, org.apache.calcite.rel.type.RelDataType inputRowType, @Nullable org.apache.calcite.rel.type.RelDataType outputType)
  • Method Details

    • expand

      public String expand(String expr)
      Converts the given SQL expression string to an expanded string with fully qualified function calls and escaped identifiers.

      E.g. my_udf(f0) + 1 to `my_catalog`.`my_database`.`my_udf`(`f0`) + 1

    • convertToRexNode

      public org.apache.calcite.rex.RexNode convertToRexNode(String expr)
      Converts a SQL expression to a RexNode expression.
      Parameters:
      expr - SQL expression e.g. `my_catalog`.`my_database`.`my_udf`(`f0`) + 1
    • convertToRexNode

      public org.apache.calcite.rex.RexNode convertToRexNode(org.apache.calcite.sql.SqlNode sqlNode)
      Converts a SqlNode to a RexNode expression.
    • convertToRexNodes

      public org.apache.calcite.rex.RexNode[] convertToRexNodes(String[] exprs)
      Converts an array of SQL expressions to an array of RexNode expressions.
      Parameters:
      exprs - SQL expression e.g. `my_catalog`.`my_database`.`my_udf`(`f0`) + 1