Loading mysql-test/r/select.result +22 −0 Original line number Diff line number Diff line Loading @@ -2401,3 +2401,25 @@ id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 5 1 SIMPLE t2 ref a a 23 test.t1.a 2 DROP TABLE t1, t2; CREATE TABLE t1 ( city char(30) ); INSERT INTO t1 VALUES ('London'); INSERT INTO t1 VALUES ('Paris'); SELECT * FROM t1 WHERE city='London'; city London SELECT * FROM t1 WHERE city='london'; city London EXPLAIN SELECT * FROM t1 WHERE city='London' AND city='london'; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where SELECT * FROM t1 WHERE city='London' AND city='london'; city London EXPLAIN SELECT * FROM t1 WHERE city LIKE '%london%' AND city='London'; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where SELECT * FROM t1 WHERE city LIKE '%london%' AND city='London'; city London DROP TABLE t1; mysql-test/t/select.test +19 −0 Original line number Diff line number Diff line Loading @@ -1985,3 +1985,22 @@ EXPLAIN SELECT * FROM t1 LEFT JOIN t2 USE INDEX (a) ON t1.a=t2.a; EXPLAIN SELECT * FROM t1 LEFT JOIN t2 FORCE INDEX (a) ON t1.a=t2.a; DROP TABLE t1, t2; # # Test case for bug 7098: substitution of a constant for a string field # CREATE TABLE t1 ( city char(30) ); INSERT INTO t1 VALUES ('London'); INSERT INTO t1 VALUES ('Paris'); SELECT * FROM t1 WHERE city='London'; SELECT * FROM t1 WHERE city='london'; EXPLAIN SELECT * FROM t1 WHERE city='London' AND city='london'; SELECT * FROM t1 WHERE city='London' AND city='london'; EXPLAIN SELECT * FROM t1 WHERE city LIKE '%london%' AND city='London'; SELECT * FROM t1 WHERE city LIKE '%london%' AND city='London'; DROP TABLE t1; sql/item.h +1 −1 Original line number Diff line number Diff line Loading @@ -985,7 +985,7 @@ class Item_string :public Item Item *new_item() { return new Item_string(name, str_value.ptr(), str_value.length(), &my_charset_bin); str_value.length(), collation.collation); } Item *safe_charset_converter(CHARSET_INFO *tocs); String *const_string() { return &str_value; } Loading Loading
mysql-test/r/select.result +22 −0 Original line number Diff line number Diff line Loading @@ -2401,3 +2401,25 @@ id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 5 1 SIMPLE t2 ref a a 23 test.t1.a 2 DROP TABLE t1, t2; CREATE TABLE t1 ( city char(30) ); INSERT INTO t1 VALUES ('London'); INSERT INTO t1 VALUES ('Paris'); SELECT * FROM t1 WHERE city='London'; city London SELECT * FROM t1 WHERE city='london'; city London EXPLAIN SELECT * FROM t1 WHERE city='London' AND city='london'; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where SELECT * FROM t1 WHERE city='London' AND city='london'; city London EXPLAIN SELECT * FROM t1 WHERE city LIKE '%london%' AND city='London'; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where SELECT * FROM t1 WHERE city LIKE '%london%' AND city='London'; city London DROP TABLE t1;
mysql-test/t/select.test +19 −0 Original line number Diff line number Diff line Loading @@ -1985,3 +1985,22 @@ EXPLAIN SELECT * FROM t1 LEFT JOIN t2 USE INDEX (a) ON t1.a=t2.a; EXPLAIN SELECT * FROM t1 LEFT JOIN t2 FORCE INDEX (a) ON t1.a=t2.a; DROP TABLE t1, t2; # # Test case for bug 7098: substitution of a constant for a string field # CREATE TABLE t1 ( city char(30) ); INSERT INTO t1 VALUES ('London'); INSERT INTO t1 VALUES ('Paris'); SELECT * FROM t1 WHERE city='London'; SELECT * FROM t1 WHERE city='london'; EXPLAIN SELECT * FROM t1 WHERE city='London' AND city='london'; SELECT * FROM t1 WHERE city='London' AND city='london'; EXPLAIN SELECT * FROM t1 WHERE city LIKE '%london%' AND city='London'; SELECT * FROM t1 WHERE city LIKE '%london%' AND city='London'; DROP TABLE t1;
sql/item.h +1 −1 Original line number Diff line number Diff line Loading @@ -985,7 +985,7 @@ class Item_string :public Item Item *new_item() { return new Item_string(name, str_value.ptr(), str_value.length(), &my_charset_bin); str_value.length(), collation.collation); } Item *safe_charset_converter(CHARSET_INFO *tocs); String *const_string() { return &str_value; } Loading