diff options
Diffstat (limited to 'sql/sql_select.cc')
-rw-r--r-- | sql/sql_select.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc index 01ca12aa371..986d7e6ba52 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -4563,7 +4563,9 @@ select_handler *find_select_handler(THD *thd, { if (select_lex->next_select()) return 0; - if (select_lex->master_unit()->outer_select()) + // Quit early if this is a subquery or query has a set operation. + if (select_lex->master_unit()->outer_select() || + select_lex->master_unit()->first_select()->next_select()) return 0; TABLE_LIST *tbl= nullptr; |