Commit 48c82418 authored by unknown's avatar unknown
Browse files

Merge rurik.mysql.com:/home/igor/dev/mysql-4.1-0

into  rurik.mysql.com:/home/igor/dev/mysql-5.0-0


mysql-test/t/having.test:
  Auto merged
mysql-test/r/having.result:
  Manual merge.
sql/sql_select.cc:
  Manual merge.
parents 312c2f47 770e0e81
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -128,6 +128,19 @@ id description c
1	test	0
2	test2	0
drop table t1,t2,t3;
CREATE TABLE t1 (a int);
INSERT INTO t1 VALUES (3), (4), (1), (3), (1);
SELECT SUM(a) FROM t1 GROUP BY a HAVING SUM(a)>0;
SUM(a)
2
6
4
SELECT SUM(a) FROM t1 GROUP BY a HAVING SUM(a);
SUM(a)
2
6
4
DROP TABLE t1;
create table t1 (col1 int, col2 varchar(5), col_t1 int);
create table t2 (col1 int, col2 varchar(5), col_t2 int);
create table t3 (col1 int, col2 varchar(5), col_t3 int);
+12 −0
Original line number Diff line number Diff line
@@ -123,6 +123,18 @@ group by a.id, a.description
having (a.description is not null) and (c=0);
drop table t1,t2,t3;

#
# Bug #14274: HAVING clause containing only set function
#

CREATE TABLE t1 (a int);
INSERT INTO t1 VALUES (3), (4), (1), (3), (1);

SELECT SUM(a) FROM t1 GROUP BY a HAVING SUM(a)>0;
SELECT SUM(a) FROM t1 GROUP BY a HAVING SUM(a);

DROP TABLE t1;

# End of 4.1 tests

#
+1 −1
Original line number Diff line number Diff line
@@ -365,7 +365,7 @@ JOIN::prepare(Item ***rref_pointer_array,
    if (having_fix_rc || thd->net.report_error)
      DBUG_RETURN(-1);				/* purecov: inspected */
    if (having->with_sum_func)
      having->split_sum_func(thd, ref_pointer_array, all_fields);
      having->split_sum_func2(thd, ref_pointer_array, all_fields, &having);
    thd->lex->allow_sum_func= save_allow_sum_func;
  }
  if (select_lex->inner_sum_func_list)