summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <gluh@eagle.(none)>2007-10-29 14:53:42 +0400
committerunknown <gluh@eagle.(none)>2007-10-29 14:53:42 +0400
commit91ca02ad8affb8cb0546bc129e84cdc15c21ceef (patch)
tree7490fcfcaa349688856f26eec28fcb57f0bd4139
parent6b750312422e924ea25b820259538d37af3c7069 (diff)
parentd5b1d6205b126be933a833f497a8de8854c0666d (diff)
downloadmariadb-git-91ca02ad8affb8cb0546bc129e84cdc15c21ceef.tar.gz
Merge mysql.com:/home/gluh/MySQL/Merge/5.0-opt
into mysql.com:/home/gluh/MySQL/Merge/5.1-opt mysql-test/r/func_gconcat.result: Auto merged mysql-test/t/func_gconcat.test: Auto merged sql/item_sum.cc: Auto merged
-rw-r--r--mysql-test/r/func_gconcat.result9
-rw-r--r--mysql-test/t/func_gconcat.test9
-rw-r--r--sql/item_sum.cc2
3 files changed, 19 insertions, 1 deletions
diff --git a/mysql-test/r/func_gconcat.result b/mysql-test/r/func_gconcat.result
index 7ae7806baea..d257e526abf 100644
--- a/mysql-test/r/func_gconcat.result
+++ b/mysql-test/r/func_gconcat.result
@@ -867,4 +867,13 @@ select group_concat(distinct a, c order by a desc, c desc) from t1;
group_concat(distinct a, c order by a desc, c desc)
31,11,10,01,00
drop table t1;
+create table t1 (f1 char(20));
+insert into t1 values (''),('');
+select group_concat(distinct f1) from t1;
+group_concat(distinct f1)
+
+select group_concat(f1) from t1;
+group_concat(f1)
+,
+drop table t1;
End of 5.0 tests
diff --git a/mysql-test/t/func_gconcat.test b/mysql-test/t/func_gconcat.test
index 4c5dd6467bd..322be2b7b8e 100644
--- a/mysql-test/t/func_gconcat.test
+++ b/mysql-test/t/func_gconcat.test
@@ -590,4 +590,13 @@ select group_concat(distinct a, c order by a desc, c desc) from t1;
drop table t1;
+#
+# Bug#30897 GROUP_CONCAT returns extra comma on empty fields
+#
+create table t1 (f1 char(20));
+insert into t1 values (''),('');
+select group_concat(distinct f1) from t1;
+select group_concat(f1) from t1;
+drop table t1;
+
--echo End of 5.0 tests
diff --git a/sql/item_sum.cc b/sql/item_sum.cc
index 0e1daadd8e7..a7574cf4d60 100644
--- a/sql/item_sum.cc
+++ b/sql/item_sum.cc
@@ -3427,7 +3427,7 @@ String* Item_func_group_concat::val_str(String* str)
DBUG_ASSERT(fixed == 1);
if (null_value)
return 0;
- if (!result.length() && tree)
+ if (no_appended && tree)
/* Tree is used for sorting as in ORDER BY */
tree_walk(tree, (tree_walk_action)&dump_leaf_key, (void*)this,
left_root_right);