Loading mysql-test/r/subselect.result +6 −0 Original line number Diff line number Diff line Loading @@ -2757,3 +2757,9 @@ one two test 5 6 1 7 8 1 DROP TABLE t1,t2; CREATE TABLE t1 (a char(5), b char(5)); INSERT INTO t1 VALUES (NULL,'aaa'), ('aaa','aaa'); SELECT * FROM t1 WHERE (a,b) IN (('aaa','aaa'), ('aaa','bbb')); a b aaa aaa DROP TABLE t1; mysql-test/t/subselect.test +11 −0 Original line number Diff line number Diff line Loading @@ -1774,4 +1774,15 @@ SELECT one,two,ROW(one,two) IN (SELECT one,two FROM t2 WHERE flag = 'N' group by DROP TABLE t1,t2; # # Bug #12392: where cond with IN predicate for rows and NULL values in table # CREATE TABLE t1 (a char(5), b char(5)); INSERT INTO t1 VALUES (NULL,'aaa'), ('aaa','aaa'); SELECT * FROM t1 WHERE (a,b) IN (('aaa','aaa'), ('aaa','bbb')); DROP TABLE t1; # End of 4.1 tests sql/item_cmpfunc.cc +2 −0 Original line number Diff line number Diff line Loading @@ -1551,6 +1551,8 @@ in_row::~in_row() byte *in_row::get_value(Item *item) { tmp.store_value(item); if (item->is_null()) return 0; return (byte *)&tmp; } Loading Loading
mysql-test/r/subselect.result +6 −0 Original line number Diff line number Diff line Loading @@ -2757,3 +2757,9 @@ one two test 5 6 1 7 8 1 DROP TABLE t1,t2; CREATE TABLE t1 (a char(5), b char(5)); INSERT INTO t1 VALUES (NULL,'aaa'), ('aaa','aaa'); SELECT * FROM t1 WHERE (a,b) IN (('aaa','aaa'), ('aaa','bbb')); a b aaa aaa DROP TABLE t1;
mysql-test/t/subselect.test +11 −0 Original line number Diff line number Diff line Loading @@ -1774,4 +1774,15 @@ SELECT one,two,ROW(one,two) IN (SELECT one,two FROM t2 WHERE flag = 'N' group by DROP TABLE t1,t2; # # Bug #12392: where cond with IN predicate for rows and NULL values in table # CREATE TABLE t1 (a char(5), b char(5)); INSERT INTO t1 VALUES (NULL,'aaa'), ('aaa','aaa'); SELECT * FROM t1 WHERE (a,b) IN (('aaa','aaa'), ('aaa','bbb')); DROP TABLE t1; # End of 4.1 tests
sql/item_cmpfunc.cc +2 −0 Original line number Diff line number Diff line Loading @@ -1551,6 +1551,8 @@ in_row::~in_row() byte *in_row::get_value(Item *item) { tmp.store_value(item); if (item->is_null()) return 0; return (byte *)&tmp; } Loading