CursorResultSet, NoPutResultSet, ResultSet, RowLocationRetRowSource, RowSourceHashLeftOuterJoinResultSetclass NestedLoopLeftOuterJoinResultSet extends NestedLoopJoinResultSet
BasicNoPutResultSetImpl.FieldComparator| Modifier and Type | Field | Description |
|---|---|---|
int |
emptyRightRowsReturned |
|
protected GeneratedMethod |
emptyRowFun |
|
private boolean |
matchRight |
|
private boolean |
returnedEmptyRight |
|
private ExecRow |
rightEmptyRow |
|
private boolean |
wasRightOuterJoin |
activation, beginTime, closeTime, compactRow, constructorTime, currentRow, endExecutionTime, finished, isOpen, isTopResultSet, nextTime, numOpens, openTime, optimizerEstimatedCost, optimizerEstimatedRowCount, resultDescription, rowsFiltered, rowsSeen, startExecutionTime, subqueryTrackingArrayisRightOpen, leftNumCols, leftResultSet, leftRow, mergedRow, notExistsRightSide, oneRowRightSide, restriction, restrictionTime, rightNumCols, rightResultSet, rightRow, rowsReturned, rowsSeenLeft, rowsSeenRight, userSuppliedOptimizerOverridesABSOLUTE, FIRST, LAST, NEXT, PREVIOUS, RELATIVE, TEMPORARY_RESULT_SET_NUMBERcheckNullCols, clonedExecRow, cncLen, resultSetNumber, targetResultSetCURRENT_RESULTSET_ONLY, ENTIRE_RESULTSET_TREE, ISAFTERLAST, ISBEFOREFIRST, ISFIRST, ISLAST| Constructor | Description |
|---|---|
NestedLoopLeftOuterJoinResultSet(NoPutResultSet leftResultSet,
int leftNumCols,
NoPutResultSet rightResultSet,
int rightNumCols,
Activation activation,
GeneratedMethod restriction,
int resultSetNumber,
GeneratedMethod emptyRowFun,
boolean wasRightOuterJoin,
boolean oneRowRightSide,
boolean notExistsRightSide,
double optimizerEstimatedRowCount,
double optimizerEstimatedCost,
java.lang.String userSuppliedOptimizerOverrides) |
| Modifier and Type | Method | Description |
|---|---|---|
(package private) void |
clearScanState() |
Clear any private state that changes during scans.
|
protected void |
getMergedRow(ExecRow leftRow,
ExecRow rightRow) |
|
ExecRow |
getNextRowCore() |
Return the requested values computed
from the next row (if any) for which
the restriction evaluates to true.
|
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, toXMLcloseRight, finish, getCurrentRow, getRowLocation, openCore, openRight, reopenCoreclose, getTimeSpentclearCurrentRow, clearOrderableCache, closeRowSource, getCursorName, getNextRowFromRowSource, getResultDescription, getValidColumns, isForUpdate, markRowAsDeleted, needsRowLocation, needsRowLocationForDeferredCheckConstraints, needsToClone, offendingRowLocation, positionScanAtRowLocation, printQualifiers, resultSetNumber, rowLocation, setCurrentRow, setHasDeferrableChecks, setNeedsRowLocation, setTargetResultSet, skipRow, skipScan, unpackHashValue, updateRowclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddWarning, 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, toXMLprotected GeneratedMethod emptyRowFun
private boolean wasRightOuterJoin
private boolean matchRight
private boolean returnedEmptyRight
private ExecRow rightEmptyRow
public int emptyRightRowsReturned
NestedLoopLeftOuterJoinResultSet(NoPutResultSet leftResultSet, int leftNumCols, NoPutResultSet rightResultSet, int rightNumCols, Activation activation, GeneratedMethod restriction, int resultSetNumber, GeneratedMethod emptyRowFun, boolean wasRightOuterJoin, boolean oneRowRightSide, boolean notExistsRightSide, double optimizerEstimatedRowCount, double optimizerEstimatedCost, java.lang.String userSuppliedOptimizerOverrides)
public ExecRow getNextRowCore() throws StandardException
restriction parameters are evaluated for each row.
getNextRowCore in interface NoPutResultSetgetNextRowCore in class NestedLoopJoinResultSetStandardException - Thrown on errorStandardException - ResultSetNotOpen thrown if closedNoPutResultSet.getNextRowCore()protected void getMergedRow(ExecRow leftRow, ExecRow rightRow) throws StandardException
StandardExceptionvoid clearScanState()
This method is called on open()/close() and reopen()
WARNING: this should be implemented in every sub class and it should always call super.clearScanState().
clearScanState in class NestedLoopJoinResultSetApache Derby V10.14 Internals - Copyright © 2004,2018 The Apache Software Foundation. All Rights Reserved.