Class SqlJoin

All Implemented Interfaces:
Cloneable
Direct Known Subclasses:
SqlAsofJoin

public class SqlJoin extends SqlCall
Parse tree node representing a JOIN clause.
  • Field Details

  • Constructor Details

  • Method Details

    • getOperator

      public SqlOperator getOperator()
      Specified by:
      getOperator in class SqlCall
    • getKind

      public SqlKind getKind()
      Description copied from class: SqlNode
      Returns the type of node this is, or SqlKind.OTHER if it's nothing special.
      Overrides:
      getKind in class SqlCall
      Returns:
      a SqlKind value, never null
      See Also:
    • getOperandList

      public List<SqlNode> getOperandList()
      Description copied from class: SqlCall
      Returns the list of operands. The set and order of operands is call-specific.

      Note: the proper type would be List<@Nullable SqlNode>, however, it would trigger too many changes to the current codebase.

      Specified by:
      getOperandList in class SqlCall
      Returns:
      the list of call operands, never null, the operands can be null
    • setOperand

      public void setOperand(int i, @Nullable SqlNode operand)
      Description copied from class: SqlCall
      Changes the value of an operand. Allows some rewrite by SqlValidator; use sparingly.
      Overrides:
      setOperand in class SqlCall
      Parameters:
      i - Operand index
      operand - Operand value
    • getCondition

      public final @Nullable SqlNode getCondition()
    • getConditionType

      public final JoinConditionType getConditionType()
      Returns a JoinConditionType, never null.
    • getConditionTypeNode

      public SqlLiteral getConditionTypeNode()
    • getJoinType

      public final JoinType getJoinType()
      Returns a JoinType, never null.
    • getJoinTypeNode

      public SqlLiteral getJoinTypeNode()
    • getLeft

      public final SqlNode getLeft()
    • setLeft

      public void setLeft(SqlNode left)
    • isNatural

      public final boolean isNatural()
    • isNaturalNode

      public final SqlLiteral isNaturalNode()
    • getRight

      public final SqlNode getRight()
    • setRight

      public void setRight(SqlNode right)
    • toSqlString

      public SqlString toSqlString(UnaryOperator<SqlWriterConfig> transform)
      Description copied from class: SqlNode
      Returns the SQL text of the tree of which this SqlNode is the root.

      Typical return values are:

      • 'It''s a bird!'
      • NULL
      • 12.3
      • DATE '1969-04-29'
      Overrides:
      toSqlString in class SqlNode
      Parameters:
      transform - Transform that sets desired writer configuration