Loading mysql-test/r/ctype_utf8.result +40 −0 Original line number Diff line number Diff line Loading @@ -1112,6 +1112,46 @@ check table t1; Table Op Msg_type Msg_text test.t1 check status OK drop table t1; SET NAMES utf8; CREATE TABLE t1 (id int PRIMARY KEY, a varchar(16) collate utf8_unicode_ci NOT NULL default '', b int, f varchar(128) default 'XXX', INDEX (a(4)) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; INSERT INTO t1(id, a, b) VALUES (1, 'cccc', 50), (2, 'cccc', 70), (3, 'cccc', 30), (4, 'cccc', 30), (5, 'cccc', 20), (6, 'bbbbbb', 40), (7, 'dddd', 30), (8, 'aaaa', 10), (9, 'aaaa', 50), (10, 'eeeee', 40), (11, 'bbbbbb', 60); SELECT id, a, b FROM t1; id a b 1 cccc 50 2 cccc 70 3 cccc 30 4 cccc 30 5 cccc 20 6 bbbbbb 40 7 dddd 30 8 aaaa 10 9 aaaa 50 10 eeeee 40 11 bbbbbb 60 SELECT id, a, b FROM t1 WHERE a BETWEEN 'aaaa' AND 'bbbbbb'; id a b 8 aaaa 10 9 aaaa 50 6 bbbbbb 40 11 bbbbbb 60 SELECT id, a FROM t1 WHERE a='bbbbbb'; id a 6 bbbbbb 11 bbbbbb SELECT id, a FROM t1 WHERE a='bbbbbb' ORDER BY b; id a 6 bbbbbb 11 bbbbbb DROP TABLE t1; CREATE TABLE t1(id varchar(20) NOT NULL) DEFAULT CHARSET=utf8; INSERT INTO t1 VALUES ('xxx'), ('aa'), ('yyy'), ('aa'); SELECT id FROM t1; Loading mysql-test/r/delayed.result +30 −0 Original line number Diff line number Diff line Loading @@ -39,3 +39,33 @@ select * from t1; a 1 drop table t1; CREATE TABLE t1 ( a int(10) NOT NULL auto_increment, PRIMARY KEY (a)); insert delayed into t1 values(null); insert into t1 values(null); insert into t1 values(null); insert delayed into t1 values(null); insert delayed into t1 values(null); insert delayed into t1 values(null); insert into t1 values(null); insert into t1 values(null); insert into t1 values(null); delete from t1 where a=6; insert delayed into t1 values(null); insert delayed into t1 values(null); insert delayed into t1 values(null); insert delayed into t1 values(null); select * from t1 order by a; a 1 2 3 4 5 7 8 9 10 11 12 13 DROP TABLE t1; mysql-test/r/func_concat.result +14 −0 Original line number Diff line number Diff line Loading @@ -68,3 +68,17 @@ select 'a' union select concat('a', -0.0000); a a a0.0000 select concat((select x from (select 'a' as x) as t1 ), (select y from (select 'b' as y) as t2 )) from (select 1 union select 2 ) as t3; concat((select x from (select 'a' as x) as t1 ), (select y from (select 'b' as y) as t2 )) ab ab create table t1(f1 varchar(6)) charset=utf8; insert into t1 values ("123456"); select concat(f1, 2) a from t1 union select 'x' a from t1; a 1234562 x drop table t1; mysql-test/r/func_group.result +35 −0 Original line number Diff line number Diff line Loading @@ -821,6 +821,41 @@ SELECT MAX(id) FROM t1 WHERE id < 3 AND a=2 AND b=6; MAX(id) NULL DROP TABLE t1; CREATE TABLE t1 (id int PRIMARY KEY, b char(3), INDEX(b)); INSERT INTO t1 VALUES (1,'xx'), (2,'aa'); SELECT * FROM t1; id b 1 xx 2 aa SELECT MAX(b) FROM t1 WHERE b < 'ppppp'; MAX(b) aa SHOW WARNINGS; Level Code Message SELECT MAX(b) FROM t1 WHERE b < 'pp'; MAX(b) aa DROP TABLE t1; CREATE TABLE t1 (id int PRIMARY KEY, b char(16), INDEX(b(4))); INSERT INTO t1 VALUES (1, 'xxxxbbbb'), (2, 'xxxxaaaa'); SELECT MAX(b) FROM t1; MAX(b) xxxxbbbb EXPLAIN SELECT MAX(b) FROM t1; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 2 DROP TABLE t1; CREATE TABLE t1 (id int , b varchar(512), INDEX(b(250))) COLLATE latin1_bin; INSERT INTO t1 VALUES (1,CONCAT(REPEAT('_', 250), "qq")), (1,CONCAT(REPEAT('_', 250), "zz")), (1,CONCAT(REPEAT('_', 250), "aa")), (1,CONCAT(REPEAT('_', 250), "ff")); SELECT MAX(b) FROM t1; MAX(b) __________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________zz EXPLAIN SELECT MAX(b) FROM t1; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 4 DROP TABLE t1; create table t2 (ff double); insert into t2 values (2.2); select cast(sum(distinct ff) as decimal(5,2)) from t2; Loading mysql-test/r/func_in.result +29 −0 Original line number Diff line number Diff line Loading @@ -202,6 +202,35 @@ select count(*) from t1 where id not in (1,2); count(*) 1 drop table t1; create table t1 (f1 char(1), f2 int); insert into t1 values (1,0),('a',1),('z',2); select f1 from t1 where f1 in (1,'z'); f1 1 z select f2 from t1 where f2 in (1,'z'); f2 0 1 Warnings: Warning 1292 Truncated incorrect INTEGER value: 'z' select f1 from t1 where 'z' in (1,f1); f1 z select * from t1 where 'z' in (f2,f1); f1 f2 1 0 a 1 z 2 Warnings: Warning 1292 Truncated incorrect DOUBLE value: 'z' Warning 1292 Truncated incorrect DOUBLE value: 'z' Warning 1292 Truncated incorrect DOUBLE value: 'z' select * from t1 where 1 in (f2,f1); f1 f2 1 0 a 1 drop table t1; CREATE TABLE t1 (a int PRIMARY KEY); INSERT INTO t1 VALUES (44), (45), (46); SELECT * FROM t1 WHERE a IN (45); Loading Loading
mysql-test/r/ctype_utf8.result +40 −0 Original line number Diff line number Diff line Loading @@ -1112,6 +1112,46 @@ check table t1; Table Op Msg_type Msg_text test.t1 check status OK drop table t1; SET NAMES utf8; CREATE TABLE t1 (id int PRIMARY KEY, a varchar(16) collate utf8_unicode_ci NOT NULL default '', b int, f varchar(128) default 'XXX', INDEX (a(4)) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; INSERT INTO t1(id, a, b) VALUES (1, 'cccc', 50), (2, 'cccc', 70), (3, 'cccc', 30), (4, 'cccc', 30), (5, 'cccc', 20), (6, 'bbbbbb', 40), (7, 'dddd', 30), (8, 'aaaa', 10), (9, 'aaaa', 50), (10, 'eeeee', 40), (11, 'bbbbbb', 60); SELECT id, a, b FROM t1; id a b 1 cccc 50 2 cccc 70 3 cccc 30 4 cccc 30 5 cccc 20 6 bbbbbb 40 7 dddd 30 8 aaaa 10 9 aaaa 50 10 eeeee 40 11 bbbbbb 60 SELECT id, a, b FROM t1 WHERE a BETWEEN 'aaaa' AND 'bbbbbb'; id a b 8 aaaa 10 9 aaaa 50 6 bbbbbb 40 11 bbbbbb 60 SELECT id, a FROM t1 WHERE a='bbbbbb'; id a 6 bbbbbb 11 bbbbbb SELECT id, a FROM t1 WHERE a='bbbbbb' ORDER BY b; id a 6 bbbbbb 11 bbbbbb DROP TABLE t1; CREATE TABLE t1(id varchar(20) NOT NULL) DEFAULT CHARSET=utf8; INSERT INTO t1 VALUES ('xxx'), ('aa'), ('yyy'), ('aa'); SELECT id FROM t1; Loading
mysql-test/r/delayed.result +30 −0 Original line number Diff line number Diff line Loading @@ -39,3 +39,33 @@ select * from t1; a 1 drop table t1; CREATE TABLE t1 ( a int(10) NOT NULL auto_increment, PRIMARY KEY (a)); insert delayed into t1 values(null); insert into t1 values(null); insert into t1 values(null); insert delayed into t1 values(null); insert delayed into t1 values(null); insert delayed into t1 values(null); insert into t1 values(null); insert into t1 values(null); insert into t1 values(null); delete from t1 where a=6; insert delayed into t1 values(null); insert delayed into t1 values(null); insert delayed into t1 values(null); insert delayed into t1 values(null); select * from t1 order by a; a 1 2 3 4 5 7 8 9 10 11 12 13 DROP TABLE t1;
mysql-test/r/func_concat.result +14 −0 Original line number Diff line number Diff line Loading @@ -68,3 +68,17 @@ select 'a' union select concat('a', -0.0000); a a a0.0000 select concat((select x from (select 'a' as x) as t1 ), (select y from (select 'b' as y) as t2 )) from (select 1 union select 2 ) as t3; concat((select x from (select 'a' as x) as t1 ), (select y from (select 'b' as y) as t2 )) ab ab create table t1(f1 varchar(6)) charset=utf8; insert into t1 values ("123456"); select concat(f1, 2) a from t1 union select 'x' a from t1; a 1234562 x drop table t1;
mysql-test/r/func_group.result +35 −0 Original line number Diff line number Diff line Loading @@ -821,6 +821,41 @@ SELECT MAX(id) FROM t1 WHERE id < 3 AND a=2 AND b=6; MAX(id) NULL DROP TABLE t1; CREATE TABLE t1 (id int PRIMARY KEY, b char(3), INDEX(b)); INSERT INTO t1 VALUES (1,'xx'), (2,'aa'); SELECT * FROM t1; id b 1 xx 2 aa SELECT MAX(b) FROM t1 WHERE b < 'ppppp'; MAX(b) aa SHOW WARNINGS; Level Code Message SELECT MAX(b) FROM t1 WHERE b < 'pp'; MAX(b) aa DROP TABLE t1; CREATE TABLE t1 (id int PRIMARY KEY, b char(16), INDEX(b(4))); INSERT INTO t1 VALUES (1, 'xxxxbbbb'), (2, 'xxxxaaaa'); SELECT MAX(b) FROM t1; MAX(b) xxxxbbbb EXPLAIN SELECT MAX(b) FROM t1; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 2 DROP TABLE t1; CREATE TABLE t1 (id int , b varchar(512), INDEX(b(250))) COLLATE latin1_bin; INSERT INTO t1 VALUES (1,CONCAT(REPEAT('_', 250), "qq")), (1,CONCAT(REPEAT('_', 250), "zz")), (1,CONCAT(REPEAT('_', 250), "aa")), (1,CONCAT(REPEAT('_', 250), "ff")); SELECT MAX(b) FROM t1; MAX(b) __________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________zz EXPLAIN SELECT MAX(b) FROM t1; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 4 DROP TABLE t1; create table t2 (ff double); insert into t2 values (2.2); select cast(sum(distinct ff) as decimal(5,2)) from t2; Loading
mysql-test/r/func_in.result +29 −0 Original line number Diff line number Diff line Loading @@ -202,6 +202,35 @@ select count(*) from t1 where id not in (1,2); count(*) 1 drop table t1; create table t1 (f1 char(1), f2 int); insert into t1 values (1,0),('a',1),('z',2); select f1 from t1 where f1 in (1,'z'); f1 1 z select f2 from t1 where f2 in (1,'z'); f2 0 1 Warnings: Warning 1292 Truncated incorrect INTEGER value: 'z' select f1 from t1 where 'z' in (1,f1); f1 z select * from t1 where 'z' in (f2,f1); f1 f2 1 0 a 1 z 2 Warnings: Warning 1292 Truncated incorrect DOUBLE value: 'z' Warning 1292 Truncated incorrect DOUBLE value: 'z' Warning 1292 Truncated incorrect DOUBLE value: 'z' select * from t1 where 1 in (f2,f1); f1 f2 1 0 a 1 drop table t1; CREATE TABLE t1 (a int PRIMARY KEY); INSERT INTO t1 VALUES (44), (45), (46); SELECT * FROM t1 WHERE a IN (45); Loading