org.hsqldb
Class RangeVariable
- java.lang.Object
-
- org.hsqldb.RangeVariable
-
- All Implemented Interfaces:
- java.lang.Cloneable
- Direct Known Subclasses:
- RangeVariableJoined
public class RangeVariable extends java.lang.Object implements java.lang.CloneableMetadata for range variables, including conditions.- Since:
- 1.9.0
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description static classRangeVariable.RangeIteratorBasestatic classRangeVariable.RangeIteratorJoinedstatic classRangeVariable.RangeIteratorMainstatic classRangeVariable.RangeIteratorRightstatic classRangeVariable.RangeVariableConditions
-
Field Summary
Fields Modifier and Type Field and Description static intPARAMETER_RANGEstatic intTABLE_RANGEstatic intTRANSITION_RANGEstatic intVARIALBE_RANGE
-
Constructor Summary
Constructors Constructor and Description RangeVariable(HashMappedList variables, HsqlNameManager.SimpleName rangeName, boolean isVariable, int rangeType)RangeVariable(Table table, HsqlNameManager.SimpleName alias, OrderedHashSet columnList, HsqlNameManager.SimpleName[] columnNameList, ParserDQL.CompileContext compileContext)RangeVariable(Table table, int position)
-
Method Summary
-
-
-
Field Detail
-
TABLE_RANGE
public static final int TABLE_RANGE
- See Also:
- Constant Field Values
-
TRANSITION_RANGE
public static final int TRANSITION_RANGE
- See Also:
- Constant Field Values
-
PARAMETER_RANGE
public static final int PARAMETER_RANGE
- See Also:
- Constant Field Values
-
VARIALBE_RANGE
public static final int VARIALBE_RANGE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
RangeVariable
public RangeVariable(HashMappedList variables, HsqlNameManager.SimpleName rangeName, boolean isVariable, int rangeType)
-
RangeVariable
public RangeVariable(Table table, HsqlNameManager.SimpleName alias, OrderedHashSet columnList, HsqlNameManager.SimpleName[] columnNameList, ParserDQL.CompileContext compileContext)
-
RangeVariable
public RangeVariable(Table table, int position)
-
-
Method Detail
-
setRangeTableVariables
public void setRangeTableVariables()
-
setJoinType
public void setJoinType(boolean isLeft, boolean isRight)
-
addNamedJoinColumns
public void addNamedJoinColumns(OrderedHashSet columns)
-
addColumn
public void addColumn(int columnIndex)
-
addAllColumns
public void addAllColumns()
-
addNamedJoinColumnExpression
public void addNamedJoinColumnExpression(java.lang.String name, Expression e)
-
getColumnExpression
public ExpressionColumn getColumnExpression(java.lang.String name)
-
getTable
public Table getTable()
-
hasAnyIndexCondition
public boolean hasAnyIndexCondition()
-
hasSingleIndexCondition
public boolean hasSingleIndexCondition()
-
setDistinctColumnsOnIndex
public boolean setDistinctColumnsOnIndex(int[] colMap)
-
getSortIndex
public Index getSortIndex()
Used for sort
-
setSortIndex
public boolean setSortIndex(Index index, boolean reversed)
Used for sort
-
reverseOrder
public boolean reverseOrder()
-
getColumnNames
public OrderedHashSet getColumnNames()
-
getUniqueColumnNameSet
public OrderedHashSet getUniqueColumnNameSet()
-
findColumn
public int findColumn(java.lang.String schemaName, java.lang.String tableName, java.lang.String columnName)
-
getColumn
public ColumnSchema getColumn(int i)
-
getColumnAlias
public HsqlNameManager.SimpleName getColumnAlias(int i)
-
hasColumnAlias
public boolean hasColumnAlias()
-
hasTableAlias
public boolean hasTableAlias()
-
isVariable
public boolean isVariable()
-
getTableAlias
public HsqlNameManager.SimpleName getTableAlias()
-
getRangeForTableName
public RangeVariable getRangeForTableName(java.lang.String name)
-
addTableColumns
public void addTableColumns(HsqlArrayList exprList)
Add all columns to a list of expressions
-
addTableColumns
public int addTableColumns(HsqlArrayList exprList, int position, HashSet exclude)
Add all columns to a list of expressions
-
addTableColumns
public void addTableColumns(RangeVariable subRange, Expression expression, HashSet exclude)
-
setForCheckConstraint
public void setForCheckConstraint()
Removes reference to Index to avoid possible memory leaks after alter table or drop index
-
getJoinCondition
public Expression getJoinCondition()
used before condition processing
-
addJoinCondition
public void addJoinCondition(Expression e)
-
resetConditions
public void resetConditions()
-
getSubqueries
public OrderedHashSet getSubqueries()
-
collectAllExpressions
public OrderedHashSet collectAllExpressions(OrderedHashSet set, OrderedIntHashSet typeSet, OrderedIntHashSet stopAtTypeSet)
-
replaceColumnReferences
public void replaceColumnReferences(RangeVariable range, Expression[] list)
-
replaceRangeVariables
public void replaceRangeVariables(RangeVariable[] ranges, RangeVariable[] newRanges)
-
resolveRangeTable
public void resolveRangeTable(Session session, RangeGroup rangeGroup, RangeGroup[] rangeGroups)
-
describe
public java.lang.String describe(Session session, int blanks)
Retreives a String representation of this obejct.The returned String describes this object's table, alias access mode, index, join mode, Start, End and And conditions.
- Returns:
- a String representation of this object
-
getIterator
public RangeVariable.RangeIteratorMain getIterator(Session session)
-
getIterator
public static RangeIterator getIterator(Session session, RangeVariable[] rangeVars)
-
-
DataMelt 3.0 © DataMelt by jWork.ORG