class DistinctScalarAggregateResultSet extends ScalarAggregateResultSet
BasicNoPutResultSetImpl.FieldComparator
Modifier and Type | Field and Description |
---|---|
private boolean |
dropDistinctAggSort |
private int |
maxRowSize |
private ColumnOrdering[] |
order |
private ScanController |
scanController |
private boolean |
sorted |
private long |
sortId |
private ExecIndexRow |
sortResultRow |
countOfRows, isInSortedOrder, rowsInput, singleInputRow, sourceExecIndexRow
aggInfoList, aggregates, originalSource, source
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 |
---|
DistinctScalarAggregateResultSet(NoPutResultSet s,
boolean isInSortedOrder,
int aggregateItem,
int orderingItem,
Activation a,
int ra,
int maxRowSize,
int resultSetNumber,
boolean singleInputRow,
double optimizerEstimatedRowCount,
double optimizerEstimatedCost)
Constructor
|
Modifier and Type | Method and Description |
---|---|
void |
close()
If the result set has been opened,
close the open scan.
|
protected void |
closeSource()
Close the source of whatever we have been scanning.
|
ExecRow |
getNextRowCore()
Return the next row.
|
ExecIndexRow |
getRowFromResultSet(boolean doClone)
Get a row from the sorter.
|
private ScanController |
loadSorter()
Load up the sorter.
|
void |
openCore()
Open the scan.
|
void |
reopenCore()
reopen a scan on the table. scan parameters are evaluated
at each open, so there is probably some way of altering
their values...
|
accumulateScalarAggregation, getCurrentRow, getRowLocation, getTimeSpent
finish, finishAggregation, getRowTemplate, getSortAggregators, toXML
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
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addWarning, checkRowPosition, cleanUp, clearCurrentRow, finish, getAbsoluteRow, getActivation, getAutoGeneratedKeysResultset, getBeginExecutionTimestamp, getCursorName, getEndExecutionTimestamp, getExecuteTime, getFirstRow, getLastRow, getNextRow, getPreviousRow, getRelativeRow, getResultDescription, getRowNumber, getSubqueryTrackingArray, getWarnings, isClosed, modifiedRowCount, open, returnsRows, setAfterLastRow, setBeforeFirstRow, toXML
private ColumnOrdering[] order
private int maxRowSize
private boolean dropDistinctAggSort
private long sortId
private ScanController scanController
private ExecIndexRow sortResultRow
private boolean sorted
DistinctScalarAggregateResultSet(NoPutResultSet s, boolean isInSortedOrder, int aggregateItem, int orderingItem, Activation a, int ra, int maxRowSize, int resultSetNumber, boolean singleInputRow, double optimizerEstimatedRowCount, double optimizerEstimatedCost) throws StandardException
s
- input result setisInSortedOrder
- true if the source results are in sorted orderaggregateItem
- indicates the number of the
SavedObject off of the PreparedStatement that holds the
AggregatorInfoList used by this routine.a
- activationra
- saved object that builds an empty output rowresultSetNumber
- The resultSetNumber for this result setStandardException
- Thrown on errorpublic void openCore() throws StandardException
openCore
in interface NoPutResultSet
openCore
in class ScalarAggregateResultSet
StandardException
- thrown if cursor finished.public ExecRow getNextRowCore() throws StandardException
getNextRowCore
in interface NoPutResultSet
getNextRowCore
in class ScalarAggregateResultSet
StandardException
- thrown on failure.StandardException
- ResultSetNotOpen thrown if not yet open.NoPutResultSet.getNextRowCore()
public void reopenCore() throws StandardException
reopenCore
in interface NoPutResultSet
reopenCore
in class ScalarAggregateResultSet
StandardException
- thrown if cursor finished.NoPutResultSet.openCore()
public void close() throws StandardException
close
in interface ResultSet
close
in class ScalarAggregateResultSet
StandardException
- thrown on errorpublic ExecIndexRow getRowFromResultSet(boolean doClone) throws StandardException
getRowFromResultSet
in class ScalarAggregateResultSet
doClone
- - true of the row should be clonedStandardException
- Thrown on errorprotected void closeSource() throws StandardException
StandardException
- thrown on errorprivate ScanController loadSorter() throws StandardException
StandardException
- thrown on failure.Apache Derby V10.13 Internals - Copyright © 2004,2016 The Apache Software Foundation. All Rights Reserved.