Loading mysql-test/r/olap.result +12 −0 Original line number Diff line number Diff line Loading @@ -504,3 +504,15 @@ IFNULL(a, 'TEST') COALESCE(b, 'TEST') 4 TEST TEST TEST DROP TABLE t1,t2; CREATE TABLE t1 (a INT(10) NOT NULL, b INT(10) NOT NULL); INSERT INTO t1 VALUES (1, 1); INSERT INTO t1 VALUES (1, 2); SELECT a, b, a AS c, COUNT(*) AS count FROM t1 GROUP BY a, b, c WITH ROLLUP; a b c count 1 1 1 1 1 1 NULL 1 1 2 1 1 1 2 NULL 1 1 NULL NULL 2 NULL NULL NULL 2 DROP TABLE t1; mysql-test/t/olap.test +11 −0 Original line number Diff line number Diff line Loading @@ -238,3 +238,14 @@ SELECT IFNULL(a, 'TEST'), COALESCE(b, 'TEST') FROM t2 DROP TABLE t1,t2; # # Test for bug #11543: ROLLUP query with a repeated column in GROUP BY # CREATE TABLE t1 (a INT(10) NOT NULL, b INT(10) NOT NULL); INSERT INTO t1 VALUES (1, 1); INSERT INTO t1 VALUES (1, 2); SELECT a, b, a AS c, COUNT(*) AS count FROM t1 GROUP BY a, b, c WITH ROLLUP; DROP TABLE t1; sql/sql_select.cc +2 −2 Original line number Diff line number Diff line Loading @@ -9322,7 +9322,7 @@ bool JOIN::rollup_init() ORDER *group_tmp; for (group_tmp= group_list; group_tmp; group_tmp= group_tmp->next) { if (item->eq(*group_tmp->item,0)) if (*group_tmp->item == item) item->maybe_null= 1; } if (item->type() == Item::FUNC_ITEM) Loading Loading @@ -9444,7 +9444,7 @@ bool JOIN::rollup_make_fields(List<Item> &fields_arg, List<Item> &sel_fields, for (group_tmp= start_group, i= pos ; group_tmp ; group_tmp= group_tmp->next, i++) { if (item->eq(*group_tmp->item,0)) if (*group_tmp->item == item) { /* This is an element that is used by the GROUP BY and should be Loading Loading
mysql-test/r/olap.result +12 −0 Original line number Diff line number Diff line Loading @@ -504,3 +504,15 @@ IFNULL(a, 'TEST') COALESCE(b, 'TEST') 4 TEST TEST TEST DROP TABLE t1,t2; CREATE TABLE t1 (a INT(10) NOT NULL, b INT(10) NOT NULL); INSERT INTO t1 VALUES (1, 1); INSERT INTO t1 VALUES (1, 2); SELECT a, b, a AS c, COUNT(*) AS count FROM t1 GROUP BY a, b, c WITH ROLLUP; a b c count 1 1 1 1 1 1 NULL 1 1 2 1 1 1 2 NULL 1 1 NULL NULL 2 NULL NULL NULL 2 DROP TABLE t1;
mysql-test/t/olap.test +11 −0 Original line number Diff line number Diff line Loading @@ -238,3 +238,14 @@ SELECT IFNULL(a, 'TEST'), COALESCE(b, 'TEST') FROM t2 DROP TABLE t1,t2; # # Test for bug #11543: ROLLUP query with a repeated column in GROUP BY # CREATE TABLE t1 (a INT(10) NOT NULL, b INT(10) NOT NULL); INSERT INTO t1 VALUES (1, 1); INSERT INTO t1 VALUES (1, 2); SELECT a, b, a AS c, COUNT(*) AS count FROM t1 GROUP BY a, b, c WITH ROLLUP; DROP TABLE t1;
sql/sql_select.cc +2 −2 Original line number Diff line number Diff line Loading @@ -9322,7 +9322,7 @@ bool JOIN::rollup_init() ORDER *group_tmp; for (group_tmp= group_list; group_tmp; group_tmp= group_tmp->next) { if (item->eq(*group_tmp->item,0)) if (*group_tmp->item == item) item->maybe_null= 1; } if (item->type() == Item::FUNC_ITEM) Loading Loading @@ -9444,7 +9444,7 @@ bool JOIN::rollup_make_fields(List<Item> &fields_arg, List<Item> &sel_fields, for (group_tmp= start_group, i= pos ; group_tmp ; group_tmp= group_tmp->next, i++) { if (item->eq(*group_tmp->item,0)) if (*group_tmp->item == item) { /* This is an element that is used by the GROUP BY and should be Loading