diff options
author | unknown <sergefp@mysql.com> | 2005-03-11 02:26:38 +0300 |
---|---|---|
committer | unknown <sergefp@mysql.com> | 2005-03-11 02:26:38 +0300 |
commit | 324a566832920c0a6685effd86d542619d5d4f95 (patch) | |
tree | cbc4ca88ebc89fc01e2f360fbce77f93d2198a90 | |
parent | 5aed41290a912118cd7488c5d9f9ce50c11a1aa0 (diff) | |
parent | ff2fcba35b636a282dc3d93d0c9f31515c09b659 (diff) | |
download | mariadb-git-324a566832920c0a6685effd86d542619d5d4f95.tar.gz |
Merge mysql.com:/home/psergey/mysql-4.1-bug8711
into mysql.com:/home/psergey/mysql-5.0-bug8711
mysql-test/r/join_outer.result:
Auto merged
mysql-test/t/join_outer.test:
Auto merged
sql/item_cmpfunc.h:
Auto merged
-rw-r--r-- | mysql-test/r/join_outer.result | 20 | ||||
-rw-r--r-- | mysql-test/t/join_outer.test | 13 | ||||
-rw-r--r-- | sql/item_cmpfunc.h | 1 |
3 files changed, 34 insertions, 0 deletions
diff --git a/mysql-test/r/join_outer.result b/mysql-test/r/join_outer.result index d2879e18726..01447d5e464 100644 --- a/mysql-test/r/join_outer.result +++ b/mysql-test/r/join_outer.result @@ -677,6 +677,26 @@ id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t3 ALL NULL NULL NULL NULL 2 drop table t1, t2, t3; create table t1 ( +a int(11), +b char(10), +key (a) +); +insert into t1 (a) values (1),(2),(3),(4); +create table t2 (a int); +select * from t1 left join t2 on t1.a=t2.a where not (t2.a <=> t1.a); +a b a +1 NULL NULL +2 NULL NULL +3 NULL NULL +4 NULL NULL +select * from t1 left join t2 on t1.a=t2.a having not (t2.a <=> t1.a); +a b a +1 NULL NULL +2 NULL NULL +3 NULL NULL +4 NULL NULL +drop table t1,t2; +create table t1 ( match_id tinyint(3) unsigned not null auto_increment, home tinyint(3) unsigned default '0', unique key match_id (match_id), diff --git a/mysql-test/t/join_outer.test b/mysql-test/t/join_outer.test index 66de5e5a4c9..7d85ab09b08 100644 --- a/mysql-test/t/join_outer.test +++ b/mysql-test/t/join_outer.test @@ -457,6 +457,19 @@ explain select * from t1 left join t2 on b1 = a1 left join t3 on c1 = a1 an drop table t1, t2, t3; +# Test for BUG#8711 '<=>' was considered to be a NULL-rejecting predicate. +create table t1 ( + a int(11), + b char(10), + key (a) +); +insert into t1 (a) values (1),(2),(3),(4); +create table t2 (a int); + +select * from t1 left join t2 on t1.a=t2.a where not (t2.a <=> t1.a); +select * from t1 left join t2 on t1.a=t2.a having not (t2.a <=> t1.a); +drop table t1,t2; + # Test for BUG#5088 create table t1 ( diff --git a/sql/item_cmpfunc.h b/sql/item_cmpfunc.h index 5a87635a4dc..38717672ba8 100644 --- a/sql/item_cmpfunc.h +++ b/sql/item_cmpfunc.h @@ -323,6 +323,7 @@ public: Item_func_equal(Item *a,Item *b) :Item_bool_rowready_func2(a,b) {}; longlong val_int(); void fix_length_and_dec(); + table_map not_null_tables() const { return 0; } enum Functype functype() const { return EQUAL_FUNC; } enum Functype rev_functype() const { return EQUAL_FUNC; } cond_result eq_cmp_result() const { return COND_TRUE; } |