summaryrefslogtreecommitdiff
path: root/sql/sql_lex.cc
diff options
context:
space:
mode:
authorunknown <evgen@moonbone.local>2005-08-18 22:46:17 +0400
committerunknown <evgen@moonbone.local>2005-08-18 22:46:17 +0400
commit88a7d01eba6960ebd73307b37527946a22142d34 (patch)
tree066fbaea85a3e01edf160e37ba0534d4ef2a6ab7 /sql/sql_lex.cc
parent0b8e774e5faa9650ea13ee9cdb0cbc4475a1de7c (diff)
parentdef42df9feebef4d513e834cfeacf73691927110 (diff)
downloadmariadb-git-88a7d01eba6960ebd73307b37527946a22142d34.tar.gz
Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0
into moonbone.local:/work/10624-bug-5.0-mysql sql/sql_lex.cc: Auto merged
Diffstat (limited to 'sql/sql_lex.cc')
-rw-r--r--sql/sql_lex.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/sql/sql_lex.cc b/sql/sql_lex.cc
index 7fcc16c681e..6ede870a7fb 100644
--- a/sql/sql_lex.cc
+++ b/sql/sql_lex.cc
@@ -1511,13 +1511,16 @@ bool st_select_lex::setup_ref_array(THD *thd, uint order_group_num)
void st_select_lex_unit::print(String *str)
{
+ bool union_all= !union_distinct;
for (SELECT_LEX *sl= first_select(); sl; sl= sl->next_select())
{
if (sl != first_select())
{
str->append(" union ", 7);
- if (!union_distinct)
+ if (union_all)
str->append("all ", 4);
+ else if (union_distinct == sl)
+ union_all= true;
}
if (sl->braces)
str->append('(');