summaryrefslogtreecommitdiff
path: root/sql/sql_select.cc
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2018-08-21 15:20:34 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2018-08-21 15:20:34 +0300
commit9258097fa3617b720b2b518060c0d09a00455051 (patch)
tree0d9e98513620fdb440f1d0f78351ca794a0f731d /sql/sql_select.cc
parentcdc8debcaad6ee18ff7a146ab3f365367fe8ec93 (diff)
parentdc7c080369472f6f33344299d2e3d01619edf885 (diff)
downloadmariadb-git-9258097fa3617b720b2b518060c0d09a00455051.tar.gz
Merge 10.1 into 10.2
Diffstat (limited to 'sql/sql_select.cc')
-rw-r--r--sql/sql_select.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc
index b94ca496b95..0124a782de0 100644
--- a/sql/sql_select.cc
+++ b/sql/sql_select.cc
@@ -1564,6 +1564,14 @@ JOIN::optimize_inner()
error= 1;
DBUG_RETURN(1);
}
+ if (!group_list)
+ {
+ /* The output has only one row */
+ order=0;
+ simple_order=1;
+ group_optimized_away= 1;
+ select_distinct=0;
+ }
}
/* Calculate how to do the join */
@@ -6099,7 +6107,7 @@ add_group_and_distinct_keys(JOIN *join, JOIN_TAB *join_tab)
Item_field *cur_item;
key_map possible_keys(0);
- if (join->group_list || join->simple_group)
+ if (join->group_list)
{ /* Collect all query fields referenced in the GROUP clause. */
for (cur_group= join->group_list; cur_group; cur_group= cur_group->next)
(*cur_group->item)->walk(&Item::collect_item_field_processor, 0,