Class Variable

  • All Implemented Interfaces:
    HasSQL, Typed

    public final class Variable
    extends Operation0
    A user-defined variable, for example: @ID.
    • Field Detail

      • name

        private final java.lang.String name
      • lastValue

        private Value lastValue
    • Constructor Detail

      • Variable

        public Variable​(SessionLocal session,
                        java.lang.String name)
    • Method Detail

      • getCost

        public int getCost()
        Description copied from class: Expression
        Estimate the cost to process the expression. Used when optimizing the query, to calculate the query plan with the lowest estimated cost.
        Specified by:
        getCost in class Expression
        Returns:
        the estimated cost
      • getUnenclosedSQL

        public java.lang.StringBuilder getUnenclosedSQL​(java.lang.StringBuilder builder,
                                                        int sqlFlags)
        Description copied from class: Expression
        Get the SQL statement of this expression. This may not always be the original SQL statement, especially after optimization. Enclosing '(' and ')' are never appended.
        Specified by:
        getUnenclosedSQL in class Expression
        Parameters:
        builder - string builder
        sqlFlags - formatting flags
        Returns:
        the specified string builder
      • getType

        public TypeInfo getType()
        Description copied from class: Expression
        Returns the data type. The data type may be unknown before the optimization phase.
        Specified by:
        getType in interface Typed
        Specified by:
        getType in class Expression
        Returns:
        the data type
      • getValue

        public Value getValue​(SessionLocal session)
        Description copied from class: Expression
        Return the resulting value for the current row.
        Specified by:
        getValue in class Expression
        Parameters:
        session - the session
        Returns:
        the result
      • isEverything

        public boolean isEverything​(ExpressionVisitor visitor)
        Description copied from class: Expression
        Check if this expression and all sub-expressions can fulfill a criteria. If any part returns false, the result is false.
        Specified by:
        isEverything in class Expression
        Parameters:
        visitor - the visitor
        Returns:
        if the criteria can be fulfilled
      • getName

        public java.lang.String getName()