📄 func_test.test
字号:
--disable_warningsdrop table if exists t1,t2;--enable_warnings## Testing of comparison functions#select 0=0,1>0,1>=1,1<0,1<=0,1!=0,strcmp("abc","abcd"),strcmp("b","a"),strcmp("a","a") ;select "a"<"b","a"<="b","b">="a","b">"a","a"="A","a"<>"b";select "a "="A", "A "="a", "a " <= "A b"; select "abc" like "a%", "abc" not like "%d%", "a%" like "a\%","abc%" like "a%\%","abcd" like "a%b_%d", "a" like "%%a","abcde" like "a%_e","abc" like "abc%";select "a" like "%%b","a" like "%%ab","ab" like "a\%", "ab" like "_", "ab" like "ab_", "abc" like "%_d", "abc" like "abc%d";select '?' like '|%', '?' like '|%' ESCAPE '|', '%' like '|%', '%' like '|%' ESCAPE '|', '%' like '%';select 'abc' like '%c','abcabc' like '%c', "ab" like "", "ab" like "a", "ab" like "ab";select "Det h鋜 鋜 svenska" regexp "h[[:alpha:]]+r", "aba" regexp "^(a|b)*$";select "aba" regexp concat("^","a");select !0,NOT 0=1,!(0=0),1 AND 1,1 && 0,0 OR 1,1 || NULL, 1=1 or 1=1 and 1=0;select 2 between 1 and 3, "monty" between "max" and "my",2=2 and "monty" between "max" and "my" and 3=3;select 'b' between 'a' and 'c', 'B' between 'a' and 'c';select 2 in (3,2,5,9,5,1),"monty" in ("david","monty","allan"), 1.2 in (1.4,1.2,1.0);select -1.49 or -1.49,0.6 or 0.6;select 3 ^ 11, 1 ^ 1, 1 ^ 0, 1 ^ NULL, NULL ^ 1;explain extended select 3 ^ 11, 1 ^ 1, 1 ^ 0, 1 ^ NULL, NULL ^ 1;select 1 XOR 1, 1 XOR 0, 0 XOR 1, 0 XOR 0, NULL XOR 1, 1 XOR NULL, 0 XOR NULL;select 1 like 2 xor 2 like 1;select 10 % 7, 10 mod 7, 10 div 3;explain extended select 10 % 7, 10 mod 7, 10 div 3;select (1 << 64)-1, ((1 << 64)-1) DIV 1, ((1 << 64)-1) DIV 2;explain extended select (1 << 64)-1, ((1 << 64)-1) DIV 1, ((1 << 64)-1) DIV 2;create table t1 (a int);insert t1 values (1);select * from t1 where 1 xor 1;explain extended select * from t1 where 1 xor 1;select - a from t1;explain extended select - a from t1;drop table t1;## Wrong usage of functions#select 5 between 0 and 10 between 0 and 1,(5 between 0 and 10) between 0 and 1;select 1 and 2 between 2 and 10, 2 between 2 and 10 and 1;select 1 and 0 or 2, 2 or 1 and 0;## Coercibility#select _koi8r'a' = _koi8r'A';select _koi8r'a' = _koi8r'A' COLLATE koi8r_general_ci;explain extended select _koi8r'a' = _koi8r'A' COLLATE koi8r_general_ci;select _koi8r'a' = _koi8r'A' COLLATE koi8r_bin;select _koi8r'a' COLLATE koi8r_general_ci = _koi8r'A';select _koi8r'a' COLLATE koi8r_bin = _koi8r'A';--error 1267select _koi8r'a' COLLATE koi8r_bin = _koi8r'A' COLLATE koi8r_general_ci;--error 1267select _koi8r'a' = _latin1'A';select strcmp(_koi8r'a', _koi8r'A');select strcmp(_koi8r'a', _koi8r'A' COLLATE koi8r_general_ci);select strcmp(_koi8r'a', _koi8r'A' COLLATE koi8r_bin);select strcmp(_koi8r'a' COLLATE koi8r_general_ci, _koi8r'A');select strcmp(_koi8r'a' COLLATE koi8r_bin, _koi8r'A');--error 1267select strcmp(_koi8r'a' COLLATE koi8r_general_ci, _koi8r'A' COLLATE koi8r_bin);--error 1267select strcmp(_koi8r'a', _latin1'A');select _koi8r'a' LIKE _koi8r'A';select _koi8r'a' LIKE _koi8r'A' COLLATE koi8r_general_ci;select _koi8r'a' LIKE _koi8r'A' COLLATE koi8r_bin;select _koi8r'a' COLLATE koi8r_general_ci LIKE _koi8r'A';select _koi8r'a' COLLATE koi8r_bin LIKE _koi8r'A';--error 1267select _koi8r'a' COLLATE koi8r_general_ci LIKE _koi8r'A' COLLATE koi8r_bin;--error 1267select _koi8r'a' LIKE _latin1'A';## Test for LEAST() BUG in LEFT JOIN#CREATE TABLE t1 ( faq_group_id int(11) NOT NULL default '0', faq_id int(11) NOT NULL default '0', title varchar(240) default NULL, keywords text, description longblob, solution longblob, status tinyint(4) NOT NULL default '0', access_id smallint(6) default NULL, lang_id smallint(6) NOT NULL default '0', created datetime NOT NULL default '0000-00-00 00:00:00', updated datetime default NULL, last_access datetime default NULL, last_notify datetime default NULL, solved_count int(11) NOT NULL default '0', static_solved int(11) default NULL, solved_1 int(11) default NULL, solved_2 int(11) default NULL, solved_3 int(11) default NULL, solved_4 int(11) default NULL, solved_5 int(11) default NULL, expires datetime default NULL, notes text, assigned_to smallint(6) default NULL, assigned_group smallint(6) default NULL, last_edited_by smallint(6) default NULL, orig_ref_no varchar(15) binary default NULL, c$fundstate smallint(6) default NULL, c$contributor smallint(6) default NULL, UNIQUE KEY t1$faq_id (faq_id), KEY t1$group_id$faq_id (faq_group_id,faq_id), KEY t1$c$fundstate (c$fundstate) ) ENGINE=MyISAM;INSERT INTO t1 VALUES (82,82,'How to use the DynaVox Usage Counts Feature','usages count, number, corner, white, box, button','<as-html>\r\n<table width=\"100%\" border=\"0\">\r\n <tr>\r\n <td width=\"3%\">
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -