class MergeJoinResultSet extends JoinResultSet
BasicNoPutResultSetImpl.FieldComparator
Modifier and Type | Field and Description |
---|---|
private static int |
EQUAL |
private static int |
GREATER_THAN |
private GeneratedMethod |
leftGreaterThanRight |
private static int |
LESS_THAN |
isRightOpen, leftNumCols, leftResultSet, leftRow, mergedRow, notExistsRightSide, oneRowRightSide, restriction, restrictionTime, rightNumCols, rightResultSet, rightRow, rowsReturned, rowsSeenLeft, rowsSeenRight, userSuppliedOptimizerOverrides
checkNullCols, clonedExecRow, cncLen, resultSetNumber, targetResultSet
activation, beginTime, closeTime, compactRow, constructorTime, currentRow, endExecutionTime, finished, isOpen, isTopResultSet, nextTime, numOpens, openTime, optimizerEstimatedCost, optimizerEstimatedRowCount, resultDescription, rowsFiltered, rowsSeen, startExecutionTime, subqueryTrackingArray
CURRENT_RESULTSET_ONLY, ENTIRE_RESULTSET_TREE, ISAFTERLAST, ISBEFOREFIRST, ISFIRST, ISLAST
ABSOLUTE, FIRST, LAST, NEXT, PREVIOUS, RELATIVE, TEMPORARY_RESULT_SET_NUMBER
Constructor and Description |
---|
MergeJoinResultSet(NoPutResultSet leftResultSet,
int leftNumCols,
NoPutResultSet rightResultSet,
int rightNumCols,
Activation activation,
GeneratedMethod leftGreaterThanRight,
GeneratedMethod restriction,
int resultSetNumber,
boolean oneRowRightSide,
boolean notExistsRightSide,
double optimizerEstimatedRowCount,
double optimizerEstimatedCost)
Create a MergeJoinResultSet
|
Modifier and Type | Method and Description |
---|---|
void |
close()
If the result set has been opened,
close the open scan.
|
ExecRow |
getNextRowCore()
Return the requested values computed
from the next row (if any) for which
the restriction evaluates to true.
|
private ExecRow |
getReturnRow(ExecRow leftRow,
ExecRow rightRow) |
long |
getTimeSpent(int type)
Return the total amount of time spent in this ResultSet
|
private boolean |
restrictionIsTrue() |
clearScanState, closeRight, finish, getCurrentRow, getRowLocation, openCore, openRight, reopenCore
clearCurrentRow, clearOrderableCache, closeRowSource, getCursorName, getNextRowFromRowSource, getResultDescription, getValidColumns, isForUpdate, markRowAsDeleted, needsRowLocation, needsRowLocationForDeferredCheckConstraints, needsToClone, offendingRowLocation, positionScanAtRowLocation, printQualifiers, resultSetNumber, rowLocation, setCurrentRow, setHasDeferrableChecks, setNeedsRowLocation, setTargetResultSet, skipRow, skipScan, unpackHashValue, updateRow
addWarning, attachStatementContext, checkCancellationFlag, checkRowPosition, childrenToXML, cleanUp, dumpTimeStats, finishAndRTS, getAbsoluteRow, getActivation, getAutoGeneratedKeysResultset, getBeginExecutionTimestamp, getCompactRow, getCurrentTimeMillis, getElapsedMillis, getEndExecutionTimestamp, getEstimatedRowCount, getExecuteTime, getExecutionFactory, getFirstRow, getLanguageConnectionContext, getLastRow, getNextRow, getPointOfAttachment, getPreviousRow, getRelativeRow, getRowNumber, getScanIsolationLevel, getSubqueryTrackingArray, getTransactionController, getWarnings, isClosed, isXplainOnlyMode, markAsTopResultSet, modifiedRowCount, open, recordConstructorTime, requiresRelocking, returnsRows, setAfterLastRow, setBeforeFirstRow, setCompactRow, setCompatRow, toXML, toXML
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addWarning, checkRowPosition, cleanUp, clearCurrentRow, getAbsoluteRow, getActivation, getAutoGeneratedKeysResultset, getBeginExecutionTimestamp, getCursorName, getEndExecutionTimestamp, getExecuteTime, getFirstRow, getLastRow, getNextRow, getPreviousRow, getRelativeRow, getResultDescription, getRowNumber, getSubqueryTrackingArray, getWarnings, isClosed, modifiedRowCount, open, returnsRows, setAfterLastRow, setBeforeFirstRow, toXML
private static final int GREATER_THAN
private static final int EQUAL
private static final int LESS_THAN
private GeneratedMethod leftGreaterThanRight
MergeJoinResultSet(NoPutResultSet leftResultSet, int leftNumCols, NoPutResultSet rightResultSet, int rightNumCols, Activation activation, GeneratedMethod leftGreaterThanRight, GeneratedMethod restriction, int resultSetNumber, boolean oneRowRightSide, boolean notExistsRightSide, double optimizerEstimatedRowCount, double optimizerEstimatedCost)
leftResultSet
- the left (outer) result setleftNumCols
- columns in left rowrightResultSet
- the right (outer) result setrightNumCols
- columns in right rowactivation
- activationleftGreaterThanRight
- a generated method that is used to
ascertain whether the row from the left result set is
greater than the row from the right result set. returns
1,0,or -1 to indicate greater than, equal, or less than,
respectivelyrestriction
- generated method for additional qualificationresultSetNumber
- the result set numberoneRowRightSide
- ignoredoptimizerEstimatedRowCount
- self-explanatoryoptimizerEstimatedCost
- self-explanatorypublic ExecRow getNextRowCore() throws StandardException
restriction parameters are evaluated for each row.
getNextRowCore
in interface NoPutResultSet
getNextRowCore
in class BasicNoPutResultSetImpl
StandardException
- Thrown on errorStandardException
- ResultSetNotOpen thrown if closedNoPutResultSet.getNextRowCore()
public void close() throws StandardException
close
in interface ResultSet
close
in class JoinResultSet
StandardException
- thrown on errorpublic long getTimeSpent(int type)
type
- CURRENT_RESULTSET_ONLY - time spent only in this ResultSet
ENTIRE_RESULTSET_TREE - time spent in this ResultSet and below.private ExecRow getReturnRow(ExecRow leftRow, ExecRow rightRow) throws StandardException
StandardException
private boolean restrictionIsTrue() throws StandardException
StandardException
Apache Derby V10.13 Internals - Copyright © 2004,2016 The Apache Software Foundation. All Rights Reserved.