5.1-bugteam->trunk-merge merge
This commit is contained in:
commit
80935b8659
@ -532,3 +532,19 @@ Warnings:
|
|||||||
Warning 1292 Truncated incorrect INTEGER value: 'd'
|
Warning 1292 Truncated incorrect INTEGER value: 'd'
|
||||||
DROP TABLE t1,t2;
|
DROP TABLE t1,t2;
|
||||||
End of 5.0 tests
|
End of 5.0 tests
|
||||||
|
#
|
||||||
|
# Bug#54416 MAX from JOIN with HAVING returning NULL with 5.1 and Empty set
|
||||||
|
#
|
||||||
|
CREATE TABLE t1 (f1 INT(11), f2 VARCHAR(1), PRIMARY KEY (f1));
|
||||||
|
INSERT INTO t1 VALUES (1,'f');
|
||||||
|
CREATE TABLE t2 (f1 INT(11), f2 VARCHAR(1));
|
||||||
|
INSERT INTO t2 VALUES (2,'m');
|
||||||
|
INSERT INTO t2 VALUES (3,'m');
|
||||||
|
INSERT INTO t2 VALUES (11,NULL);
|
||||||
|
INSERT INTO t2 VALUES (12,'k');
|
||||||
|
SELECT MAX(t1.f1) field1
|
||||||
|
FROM t1 JOIN t2 ON t2.f2 LIKE 'x'
|
||||||
|
HAVING field1 < 7;
|
||||||
|
field1
|
||||||
|
DROP TABLE t1,t2;
|
||||||
|
End of 5.1 tests
|
||||||
|
@ -544,3 +544,24 @@ ORDER BY t1.f2;
|
|||||||
DROP TABLE t1,t2;
|
DROP TABLE t1,t2;
|
||||||
|
|
||||||
--echo End of 5.0 tests
|
--echo End of 5.0 tests
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#54416 MAX from JOIN with HAVING returning NULL with 5.1 and Empty set
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
CREATE TABLE t1 (f1 INT(11), f2 VARCHAR(1), PRIMARY KEY (f1));
|
||||||
|
INSERT INTO t1 VALUES (1,'f');
|
||||||
|
|
||||||
|
CREATE TABLE t2 (f1 INT(11), f2 VARCHAR(1));
|
||||||
|
INSERT INTO t2 VALUES (2,'m');
|
||||||
|
INSERT INTO t2 VALUES (3,'m');
|
||||||
|
INSERT INTO t2 VALUES (11,NULL);
|
||||||
|
INSERT INTO t2 VALUES (12,'k');
|
||||||
|
|
||||||
|
SELECT MAX(t1.f1) field1
|
||||||
|
FROM t1 JOIN t2 ON t2.f2 LIKE 'x'
|
||||||
|
HAVING field1 < 7;
|
||||||
|
|
||||||
|
DROP TABLE t1,t2;
|
||||||
|
|
||||||
|
--echo End of 5.1 tests
|
||||||
|
@ -1154,7 +1154,7 @@ JOIN::optimize()
|
|||||||
elements may be lost during further having
|
elements may be lost during further having
|
||||||
condition transformation in JOIN::exec.
|
condition transformation in JOIN::exec.
|
||||||
*/
|
*/
|
||||||
if (having && const_table_map)
|
if (having && const_table_map && !having->with_sum_func)
|
||||||
{
|
{
|
||||||
having->update_used_tables();
|
having->update_used_tables();
|
||||||
having= remove_eq_conds(thd, having, &having_value);
|
having= remove_eq_conds(thd, having, &having_value);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user