MySQL 26.7.0
Source Code Documentation
temptable_aggregate_iterator Namespace Reference

Functions

RowIterator * CreateIterator (THD *thd, unique_ptr_destroy_only< RowIterator > subquery_iterator, Temp_table_param *temp_table_param, TABLE *table, unique_ptr_destroy_only< RowIterator > table_iterator, JOIN *join, int ref_slice)
 Create an iterator that aggregates the output rows from another iterator into a temporary table and then sets up a (pre-existing) iterator to access the temporary table. More...
 

Function Documentation

◆ CreateIterator()

RowIterator * temptable_aggregate_iterator::CreateIterator ( THD *  thd,
unique_ptr_destroy_only< RowIterator >  subquery_iterator,
Temp_table_param *  temp_table_param,
TABLE *  table,
unique_ptr_destroy_only< RowIterator >  table_iterator,
JOIN *  join,
int  ref_slice 
)

Create an iterator that aggregates the output rows from another iterator into a temporary table and then sets up a (pre-existing) iterator to access the temporary table.

See also
TemptableAggregateIterator.
Parameters
thdThread handler.
subquery_iteratorinput to aggregation.
temp_table_paramtemporary table settings.
table_iteratorIterator used for scanning the temporary table after materialization.
tablethe temporary table.
jointhe JOIN in which we aggregate.
ref_slicethe slice to set when accessing temporary table; used if anything upstream wants to evaluate values based on its contents.
Returns
the iterator.