summaryrefslogtreecommitdiff
path: root/sql/sql_select.h
diff options
context:
space:
mode:
Diffstat (limited to 'sql/sql_select.h')
-rw-r--r--sql/sql_select.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/sql/sql_select.h b/sql/sql_select.h
index c8efb26684c..a8081b8d6e3 100644
--- a/sql/sql_select.h
+++ b/sql/sql_select.h
@@ -1206,7 +1206,17 @@ public:
Indicates that grouping will be performed on the result set during
query execution. This field belongs to query execution.
- @see make_group_fields, alloc_group_fields, JOIN::exec
+ If 'sort_and_group' is set, then the optimizer is going to use on of
+ the following algorithms to resolve GROUP BY.
+
+ - If one table, sort the table and then calculate groups on the fly.
+ - If more than one table, create a temporary table to hold the join,
+ sort it and then resolve group by on the fly.
+
+ The 'on the fly' calculation is done in end_send_group()
+
+ @see make_group_fields, alloc_group_fields, JOIN::exec,
+ setup_end_select_func
*/
bool sort_and_group;
bool first_record,full_join, no_field_update;
@@ -1585,7 +1595,7 @@ public:
bool make_range_rowid_filters();
bool init_range_rowid_filters();
bool make_sum_func_list(List<Item> &all_fields, List<Item> &send_fields,
- bool before_group_by, bool recompute= FALSE);
+ bool before_group_by);
/// Initialzes a slice, see comments for ref_ptrs above.
Ref_ptr_array ref_ptr_array_slice(size_t slice_num)