| Modifier and Type | Field and Description |
|---|---|
| pack-priv HsqlNameManager. | |
| public static final int | |
| pack-priv Collation | |
| pack-priv int | |
| protected Type | |
| pack-priv static final Expression[] | |
| public static final Expression | |
| public static final Expression | |
| protected int | |
| protected int | |
| private boolean | |
| pack-priv boolean | |
| pack-priv boolean | |
| pack-priv boolean | |
| pack-priv boolean | |
| pack-priv boolean | |
| pack-priv boolean | |
| pack-priv boolean | |
| pack-priv boolean | |
| public static final int | |
| pack-priv Type[] | |
| protected Expression[] | |
| pack-priv boolean | |
| pack-priv byte | |
| protected int | |
| pack-priv int | |
| pack-priv RangeGroup | |
| pack-priv RangeGroup[] | |
| pack-priv int | |
| public static final int | |
| pack-priv TableDerived | |
| public static final int | |
| public static final int | |
| public static final int | |
| protected Object |
| Access | Constructor and Description |
|---|---|
| pack-priv | |
| pack-priv | |
| pack-priv |
| Modifier and Type | Method and Description |
|---|---|
| public void | |
| public final OrderedHashSet | collectAllExpressions(OrderedHashSet<Expression> set, OrderedIntHashSet typeSet, OrderedIntHashSet stopAtTypeSet)
collect all expressions of a set of expression types appearing anywhere in a select statement and its subselects, etc. |
| pack-priv final OrderedHashSet | |
| pack-priv void | |
| pack-priv OrderedHashSet | collectRangeVariables(OrderedHashSet<RangeVariable> set)
collects all range variables in expression tree |
| pack-priv OrderedHashSet | |
| pack-priv static void | |
| pack-priv double | |
| pack-priv static int | |
| protected String | |
| public Expression | |
| pack-priv boolean | |
| public final boolean | equals(Object other)
Overrides java. Indicates whether some other object is "equal to" this one. |
| pack-priv static boolean | |
| pack-priv static boolean | |
| public Object | |
| pack-priv String | |
| pack-priv static QuerySpecification | getCheckSelect(Session session, Table t, Expression e)
Returns a Select object that can be used for checking the contents of an existing table against the given CHECK search condition. |
| public ColumnSchema | |
| public int | |
| pack-priv String | |
| public Expression | |
| public Object | |
| pack-priv static String | |
| public Type | |
| pack-priv int | |
| pack-priv Expression | |
| pack-priv void | |
| public Expression | |
| pack-priv Type | |
| pack-priv Type[] | |
| pack-priv byte | |
| pack-priv RangeVariable | |
| public Result | |
| public Expression | |
| public Object[] | |
| pack-priv HsqlNameManager. | |
| public String | |
| public final OrderedHashSet | |
| pack-priv int | |
| public Table | |
| public int | |
| public OrderedHashSet | |
| public Object | |
| public Object | |
| pack-priv String | |
| pack-priv boolean | |
| public boolean | |
| public int | |
| pack-priv boolean | |
| pack-priv boolean | |
| pack-priv boolean | hasReference(RangeVariable[] ranges, int exclude)
return true if given RangeVariable is used in expression tree |
| pack-priv void | insertValuesIntoSubqueryTable(Session session, PersistentStore store)
Details of IN condition optimisation for 1.9.0 Predicates with SELECT are QUERY expressions Predicates with IN list Parser adds a SubQuery to the list for each predicate At type resolution IN lists that are entirely fixed constant or parameter values are selected for possible optimisation. |
| pack-priv boolean | isComposedOf(Expression[] exprList, int start, int end, OrderedIntHashSet excludeSet)
For GROUP only. |
| pack-priv boolean | isComposedOf(OrderedHashSet<Expression> expressions, RangeGroup[] rangeGroups, OrderedIntHashSet excludeSet)
For HAVING only. |
| pack-priv boolean | |
| public boolean | |
| pack-priv boolean | |
| pack-priv boolean | |
| public boolean | |
| public boolean | |
| public boolean | |
| public boolean | |
| pack-priv boolean | |
| public void | |
| pack-priv void | |
| pack-priv Expression | replaceAliasInOrderBy(Session session, List<Expression> columns, int length)
return the expression for an alias used in an ORDER BY clause |
| pack-priv Expression | |
| pack-priv Expression | |
| pack-priv void | |
| pack-priv void | |
| pack-priv void | |
| public void | |
| public List | resolveColumnReferences(Session session, RangeGroup rangeGroup, RangeGroup[] rangeGroups, List<Expression> unresolvedSet)
resolve tables and collect unresolved column expressions |
| public List | resolveColumnReferences(Session session, RangeGroup rangeGroup, int rangeCount, RangeGroup[] rangeGroups, List<Expression> unresolvedSet, boolean acceptsSequences)
|
| pack-priv static List | resolveColumnSet(Session session, RangeVariable[] rangeVars, RangeGroup[] rangeGroups, List<Expression> sourceSet)
|
| pack-priv static List | resolveColumnSet(Session session, RangeVariable[] rangeVars, int rangeCount, RangeGroup[] rangeGroups, List<Expression> sourceSet, List<Expression> targetSet)
|
| public void | |
| public void | |
| public void | |
| pack-priv void | |
| pack-priv void | |
| pack-priv void | |
| pack-priv void | |
| public void | |
| public void | |
| public void | |
| public void | |
| pack-priv void | |
| public void | |
| public void | |
| pack-priv void | |
| pack-priv void | |
| public boolean | |
| public SetFunction | |
| public SetFunction |
| alias | back to summary |
|---|---|
| pack-priv HsqlNameManager. | |
| BINARY | back to summary |
|---|---|
| public static final int BINARY | |
| collation | back to summary |
|---|---|
| pack-priv Collation collation | |
| columnIndex | back to summary |
|---|---|
| pack-priv int columnIndex | |
| dataType | back to summary |
|---|---|
| protected Type dataType | |
| emptyArray | back to summary |
|---|---|
| pack-priv static final Expression[] emptyArray | |
| EXPR_FALSE | back to summary |
|---|---|
| public static final Expression EXPR_FALSE | |
| EXPR_TRUE | back to summary |
|---|---|
| public static final Expression EXPR_TRUE | |
| exprSubType | back to summary |
|---|---|
| protected int exprSubType | |
| groupingType | back to summary |
|---|---|
| protected int groupingType | |
| hasAggregate | back to summary |
|---|---|
| private boolean hasAggregate | |
| isColumnCondition | back to summary |
|---|---|
| pack-priv boolean isColumnCondition | |
| isColumnEqual | back to summary |
|---|---|
| pack-priv boolean isColumnEqual | |
| isCorrelated | back to summary |
|---|---|
| pack-priv boolean isCorrelated | |
| isDistinctAggregate | back to summary |
|---|---|
| pack-priv boolean isDistinctAggregate | |
| isSingleColumnCondition | back to summary |
|---|---|
| pack-priv boolean isSingleColumnCondition | |
| isSingleColumnEqual | back to summary |
|---|---|
| pack-priv boolean isSingleColumnEqual | |
| isSingleColumnNotNull | back to summary |
|---|---|
| pack-priv boolean isSingleColumnNotNull | |
| isSingleColumnNull | back to summary |
|---|---|
| pack-priv boolean isSingleColumnNull | |
| LEFT | back to summary |
|---|---|
| public static final int LEFT | |
| nodeDataTypes | back to summary |
|---|---|
| pack-priv Type[] nodeDataTypes | |
| nodes | back to summary |
|---|---|
| protected Expression[] nodes | |
| noOptimisation | back to summary |
|---|---|
| pack-priv boolean noOptimisation | |
| nullability | back to summary |
|---|---|
| pack-priv byte nullability | |
| opType | back to summary |
|---|---|
| protected int opType | |
| parameterIndex | back to summary |
|---|---|
| pack-priv int parameterIndex | |
| rangeGroup | back to summary |
|---|---|
| pack-priv RangeGroup rangeGroup | |
| rangeGroups | back to summary |
|---|---|
| pack-priv RangeGroup[] rangeGroups | |
| resultTableColumnIndex | back to summary |
|---|---|
| pack-priv int resultTableColumnIndex | |
| RIGHT | back to summary |
|---|---|
| public static final int RIGHT | |
| table | back to summary |
|---|---|
| pack-priv TableDerived table | |
| TERNARY | back to summary |
|---|---|
| public static final int TERNARY | |
| THIRD | back to summary |
|---|---|
| public static final int THIRD | |
| UNARY | back to summary |
|---|---|
| public static final int UNARY | |
| valueData | back to summary |
|---|---|
| protected Object valueData | |
| Expression | back to summary |
|---|---|
| pack-priv Expression(int type) | |
| Expression | back to summary |
|---|---|
| pack-priv Expression(int type, TableDerived table) Creates a SUBQUERY expression. | |
| Expression | back to summary |
|---|---|
| pack-priv Expression(int type, Expression[] list) ROW, ARRAY etc. | |
| checkValidCheckConstraint | back to summary |
|---|---|
| public void checkValidCheckConstraint() checkValidCheckConstraint | |
| collectAllExpressions | back to summary |
|---|---|
| public final OrderedHashSet collect all expressions of a set of expression types appearing anywhere in a select statement and its subselects, etc. | |
| collectAllSubqueries | back to summary |
|---|---|
| pack-priv final OrderedHashSet | |
| collectObjectNames | back to summary |
|---|---|
| pack-priv void collectObjectNames(Set<HsqlNameManager. collects all schema objects | |
| collectRangeVariables | back to summary |
|---|---|
| pack-priv OrderedHashSet collects all range variables in expression tree | |
| collectRangeVariables | back to summary |
|---|---|
| pack-priv OrderedHashSet | |
| convertToType | back to summary |
|---|---|
| pack-priv static void convertToType(Session session, Object[] data, Type[] dataType, Type[] newType) | |
| costFactor | back to summary |
|---|---|
| pack-priv double costFactor(Session session, RangeVariable range, int operation) | |
| countNulls | back to summary |
|---|---|
| pack-priv static int countNulls(Object[] a) | |
| describe | back to summary |
|---|---|
| protected String describe(Session session, int blanks) | |
| duplicate | back to summary |
|---|---|
| public Expression duplicate() | |
| equals | back to summary |
|---|---|
| pack-priv boolean equals(Expression other) SIMPLE_COLUMN expressions can be of different Expression subclass types | |
| equals | back to summary |
|---|---|
| public final boolean equals(Object other) Overrides java. Doc from java. Indicates whether some other object is "equal to" this one.
The
An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes. | |
| equals | back to summary |
|---|---|
| pack-priv static boolean equals(Object o1, Object o2) | |
| equals | back to summary |
|---|---|
| pack-priv static boolean equals(Expression[] row1, Expression[] row2) | |
| getAggregatedValue | back to summary |
|---|---|
| public Object getAggregatedValue(Session session, SetFunction currValue) | |
| getAlias | back to summary |
|---|---|
| pack-priv String getAlias() Get the column alias | |
| getCheckSelect | back to summary |
|---|---|
| pack-priv static QuerySpecification getCheckSelect(Session session, Table t, Expression e) Returns a Select object that can be used for checking the contents of an existing table against the given CHECK search condition. | |
| getColumn | back to summary |
|---|---|
| public ColumnSchema getColumn() | |
| getColumnIndex | back to summary |
|---|---|
| public int getColumnIndex() Returns the column index in the table | |
| getColumnName | back to summary |
|---|---|
| pack-priv String getColumnName() Returns the name of a column as string
| |
| getCondition | back to summary |
|---|---|
| public Expression getCondition() | |
| getConstantValueNoCheck | back to summary |
|---|---|
| public Object getConstantValueNoCheck(Session session) | |
| getContextSQL | back to summary |
|---|---|
| pack-priv static String getContextSQL(Expression expression) | |
| getDataType | back to summary |
|---|---|
| public Type getDataType() Returns the data type | |
| getDegree | back to summary |
|---|---|
| pack-priv int getDegree() | |
| getIndexableExpression | back to summary |
|---|---|
| pack-priv Expression getIndexableExpression(RangeVariable rangeVar) | |
| getJoinRangeVariables | back to summary |
|---|---|
| pack-priv void getJoinRangeVariables(RangeVariable[] ranges, List<RangeVariable> list) | |
| getLeftNode | back to summary |
|---|---|
| public Expression getLeftNode() Returns the left node | |
| getNodeDataType | back to summary |
|---|---|
| pack-priv Type getNodeDataType(int i) | |
| getNodeDataTypes | back to summary |
|---|---|
| pack-priv Type[] getNodeDataTypes() | |
| getNullability | back to summary |
|---|---|
| pack-priv byte getNullability() | |
| getRangeVariable | back to summary |
|---|---|
| pack-priv RangeVariable getRangeVariable() Returns the range variable for a COLUMN or PERIOD expression | |
| getResult | back to summary |
|---|---|
| public Result getResult(Session session) | |
| getRightNode | back to summary |
|---|---|
| public Expression getRightNode() Returns the right node | |
| getRowValue | back to summary |
|---|---|
| public Object[] getRowValue(Session session) | |
| getSimpleName | back to summary |
|---|---|
| pack-priv HsqlNameManager. | |
| getSQL | back to summary |
|---|---|
| public String getSQL() For use with CHECK constraints. Under development. Currently supports a subset of expressions and is suitable for CHECK search conditions that refer only to the inserted/updated row. For full DDL reporting of VIEW select queries and CHECK search conditions, future improvements here are dependent upon improvements to SELECT query parsing, so that it is performed in a number of passes. An early pass should result in the query turned into an Expression tree that contains the information in the original SQL without any alterations, and with tables and columns all resolved. This Expression can then be preserved for future use. Table and column names that are not user-defined aliases should be kept as the HsqlName structures so that table or column renaming is reflected in the precompiled query. | |
| getSubqueries | back to summary |
|---|---|
| public final OrderedHashSet | |
| getSubType | back to summary |
|---|---|
| pack-priv int getSubType() | |
| getTable | back to summary |
|---|---|
| public Table getTable() | |
| getType | back to summary |
|---|---|
| public int getType() Returns the type of expression | |
| getUnkeyedColumns | back to summary |
|---|---|
| public OrderedHashSet | |
| getValue | back to summary |
|---|---|
| public Object getValue(Session session, Type type) | |
| getValue | back to summary |
|---|---|
| public Object getValue(Session session) | |
| getValueClassName | back to summary |
|---|---|
| pack-priv String getValueClassName() | |
| hasAggregate | back to summary |
|---|---|
| pack-priv boolean hasAggregate() | |
| hasCondition | back to summary |
|---|---|
| public boolean hasCondition() | |
| hashCode | back to summary |
|---|---|
| public int hashCode() Overrides java. Doc from java. Returns a hash code value for this object. This method is
supported for the benefit of hash tables such as those provided by
The general contract of
| |
| hasNonDeterministicFunction | back to summary |
|---|---|
| pack-priv boolean hasNonDeterministicFunction() | |
| hasReference | back to summary |
|---|---|
| pack-priv boolean hasReference(RangeVariable range) return true if given RangeVariable is used in expression tree | |
| hasReference | back to summary |
|---|---|
| pack-priv boolean hasReference(RangeVariable[] ranges, int exclude) return true if given RangeVariable is used in expression tree | |
| insertValuesIntoSubqueryTable | back to summary |
|---|---|
| pack-priv void insertValuesIntoSubqueryTable(Session session, PersistentStore store) Details of IN condition optimisation for 1.9.0 Predicates with SELECT are QUERY expressions Predicates with IN list Parser adds a SubQuery to the list for each predicate At type resolution IN lists that are entirely fixed constant or parameter values are selected for possible optimisation. The flags: IN expression right side isCorrelated == true if there are non-constant, non-param expressions in the list (Expressions may have to be resolved against the full set of columns of the query, so must be re-evaluated for each row and evaluated after all the joins have been made) VALUELIST expression isFixedConstantValueList == true when all expressions are fixed constant and none is a param. With this flag, a single-column VALUELIST can be accessed as a HashMap. Predicates may be optimised as joins if isCorrelated == false | |
| isComposedOf | back to summary |
|---|---|
| pack-priv boolean isComposedOf(Expression[] exprList, int start, int end, OrderedIntHashSet excludeSet) For GROUP only. | |
| isComposedOf | back to summary |
|---|---|
| pack-priv boolean isComposedOf(OrderedHashSet<Expression> expressions, RangeGroup[] rangeGroups, OrderedIntHashSet excludeSet) For HAVING only. | |
| isConditionRangeVariable | back to summary |
|---|---|
| pack-priv boolean isConditionRangeVariable(RangeVariable range) | |
| isCorrelated | back to summary |
|---|---|
| public boolean isCorrelated() isCorrelated | |
| isDistinctAggregate | back to summary |
|---|---|
| pack-priv boolean isDistinctAggregate() | |
| isDynamicParam | back to summary |
|---|---|
| pack-priv boolean isDynamicParam() | |
| isFalse | back to summary |
|---|---|
| public boolean isFalse() | |
| isIndexable | back to summary |
|---|---|
| public boolean isIndexable(RangeVariable range) | |
| isSelfAggregate | back to summary |
|---|---|
| public boolean isSelfAggregate() | |
| isTrue | back to summary |
|---|---|
| public boolean isTrue() | |
| isUnresolvedParam | back to summary |
|---|---|
| pack-priv boolean isUnresolvedParam() | |
| materialise | back to summary |
|---|---|
| public void materialise(Session session) | |
| prepareTable | back to summary |
|---|---|
| pack-priv void prepareTable(Session session, Expression row, int degree) | |
| replaceAliasInOrderBy | back to summary |
|---|---|
| pack-priv Expression replaceAliasInOrderBy(Session session, List<Expression> columns, int length) return the expression for an alias used in an ORDER BY clause | |
| replaceColumnReferences | back to summary |
|---|---|
| pack-priv Expression replaceColumnReferences(Session session, RangeVariable range, Expression[] list) | |
| replaceExpressions | back to summary |
|---|---|
| pack-priv Expression replaceExpressions(OrderedHashSet<Expression> expressions, int resultRangePosition) | |
| replaceNode | back to summary |
|---|---|
| pack-priv void replaceNode(Expression existing, Expression replacement) | |
| replaceRangeVariables | back to summary |
|---|---|
| pack-priv void replaceRangeVariables(RangeVariable[] ranges, RangeVariable[] newRanges) | |
| resetColumnReferences | back to summary |
|---|---|
| pack-priv void resetColumnReferences() | |
| resolveCheckOrGenExpression | back to summary |
|---|---|
| public void resolveCheckOrGenExpression(Session session, RangeGroup rangeGroup, boolean isCheck) | |
| resolveColumnReferences | back to summary |
|---|---|
| public List resolve tables and collect unresolved column expressions | |
| resolveColumnReferences | back to summary |
|---|---|
| public List | |
| resolveColumnSet | back to summary |
|---|---|
| pack-priv static List | |
| resolveColumnSet | back to summary |
|---|---|
| pack-priv static List | |
| resolveGrantFilter | back to summary |
|---|---|
| public void resolveGrantFilter(Session session, Table table) | |
| resolveTypes | back to summary |
|---|---|
| public void resolveTypes(Session session, Expression parent) | |
| setAggregate | back to summary |
|---|---|
| public void setAggregate() | |
| setAlias | back to summary |
|---|---|
| pack-priv void setAlias(HsqlNameManager. Set the column alias | |
| setAsConstantValue | back to summary |
|---|---|
| pack-priv void setAsConstantValue(Session session, Expression parent) | |
| setAsConstantValue | back to summary |
|---|---|
| pack-priv void setAsConstantValue(Object value, Expression parent) | |
| setAttributesAsColumn | back to summary |
|---|---|
| pack-priv void setAttributesAsColumn(ColumnSchema column) | |
| setCollation | back to summary |
|---|---|
| public void setCollation(Collation collation) | |
| setCondition | back to summary |
|---|---|
| public void setCondition(Expression e) | |
| setCorrelatedReferences | back to summary |
|---|---|
| public void setCorrelatedReferences(RangeGroup resolvedRangeGroup) | |
| setDataType | back to summary |
|---|---|
| public void setDataType(Session session, Type type) Set the data type | |
| setLeftNode | back to summary |
|---|---|
| pack-priv void setLeftNode(Expression e) | |
| setNoOptimisation | back to summary |
|---|---|
| public void setNoOptimisation() | |
| setRightNode | back to summary |
|---|---|
| public void setRightNode(Expression e) | |
| setSubType | back to summary |
|---|---|
| pack-priv void setSubType(int subType) | |
| swapLeftAndRightNodes | back to summary |
|---|---|
| pack-priv void swapLeftAndRightNodes() | |
| testCondition | back to summary |
|---|---|
| public boolean testCondition(Session session) | |
| updateAggregatingValue | back to summary |
|---|---|
| public SetFunction updateAggregatingValue(Session session, SetFunction currValue) | |
| updateAggregatingValue | back to summary |
|---|---|
| public SetFunction updateAggregatingValue(Session session, SetFunction currValue, SetFunction value) | |