func_str.test
上传用户:tsgydb
上传日期:2007-04-14
资源大小:10674k
文件大小:4k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. # Version: 3.23.29
  2. #
  3. # Description
  4. # -----------
  5. # Testing string functions
  6. select 'hello',"'hello'",'""hello""','''h''e''l''l''o''',"hel""lo",'hel'lo';
  7. select 'hello' 'monty';
  8. select length('ntrb_%\');
  9. select concat('monty',' was here ','again'),length('hello'),char(ascii('h'));
  10. select locate('he','hello'),locate('he','hello',2),locate('lo','hello',2) ;
  11. select instr('hello','he');
  12. select position('ll' in 'hello'),position('a' in 'hello');
  13. select left('hello',2),right('hello',2),substring('hello',2,2),mid('hello',1,5) ;
  14. select concat('',left(right(concat('what ',concat('is ','happening')),9),4),'',substring('monty',5,1)) ;
  15. select substring_index('www.tcx.se','.',-2),substring_index('www.tcx.se','.',1);
  16. select substring_index('www.tcx.se','tcx',1),substring_index('www.tcx.se','tcx',-1);
  17. select substring_index('.tcx.se','.',-2),substring_index('.tcx.se','.tcx',-1);
  18. select concat(':',ltrim('  left  '),':',rtrim('  right  '),':');
  19. select concat(':',trim(LEADING FROM ' left'),':',trim(TRAILING FROM ' right '),':');
  20. select concat(':',trim(' m '),':',trim(BOTH FROM ' y '),':',trim('*' FROM '*s*'),':');
  21. select concat(':',trim(BOTH 'ab' FROM 'ababmyabab'),':',trim(BOTH '*' FROM '***sql'),':');
  22. select concat(':',trim(LEADING '.*' FROM '.*my'),':',trim(TRAILING '.*' FROM 'sql.*.*'),':');
  23. select TRIM("foo" FROM "foo"), TRIM("foo" FROM "foook"), TRIM("foo" FROM "okfoo");
  24. select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es');
  25. select replace('aaaa','a','b'),replace('aaaa','aa','b'),replace('aaaa','a','bb'),replace('aaaa','','b'),replace('bbbb','a','c');
  26. select replace(concat(lcase(concat('THIS',' ','IS',' ','A',' ')),ucase('false'),' ','test'),'FALSE','REAL') ;
  27. select soundex(''),soundex('he'),soundex('hello all folks');
  28. select password('test'),length(encrypt('test')),encrypt('test','aa');
  29. select md5('hello');
  30. select repeat('monty',5),concat('*',space(5),'*');
  31. select reverse('abc'),reverse('abcd');
  32. select rpad('a',4,'1'),rpad('a',4,'12'),rpad('abcd',3,'12');
  33. select lpad('a',4,'1'),lpad('a',4,'12'),lpad('abcd',3,'12');
  34. select rpad(741653838,17,'0'),lpad(741653838,17,'0');
  35. select rpad('abcd',7,'ab'),lpad('abcd',7,'ab');
  36. select rpad('abcd',1,'ab'),lpad('abcd',1,'ab');
  37. select LEAST(NULL,'HARRY','HARRIOT',NULL,'HAROLD'),GREATEST(NULL,'HARRY','HARRIOT',NULL,'HAROLD');
  38. select least(1,2,3) | greatest(16,32,8), least(5,4)*1,greatest(-1.0,1.0)*1,least(3,2,1)*1.0,greatest(1,1.1,1.0),least("10",9),greatest("A","B","0");
  39. select decode(encode(repeat("a",100000),"monty"),"monty")=repeat("a",100000);
  40. select decode(encode("abcdef","monty"),"monty")="abcdef";
  41. #
  42. # Wrong usage of functions
  43. #
  44. select reverse("");
  45. select insert("aa",100,1,"b"),insert("aa",1,3,"b"),left("aa",-1),substring("a",1,2);
  46. select elt(2,1),field(NULL,"a","b","c"),reverse("");
  47. select locate("a","b",2),locate("","a",1);
  48. select ltrim("a"),rtrim("a"),trim(BOTH "" from "a"),trim(BOTH " " from "a");
  49. select concat("1","2")|0,concat("1",".5")+0.0;
  50. select substring_index("www.tcx.se","",3);
  51. select length(repeat("a",100000000)),length(repeat("a",1000*64));
  52. select position("0" in "baaa" in (1)),position("0" in "1" in (1,2,3)),position("sql" in ("mysql"));
  53. select position(("1" in (1,2,3)) in "01");
  54. select length(repeat("a",65500)),length(concat(repeat("a",32000),repeat("a",32000))),length(replace("aaaaa","a",concat(repeat("a",10000)))),length(insert(repeat("a",40000),1,30000,repeat("b",50000)));
  55. select length(repeat("a",1000000)),length(concat(repeat("a",32000),repeat("a",32000),repeat("a",32000))),length(replace("aaaaa","a",concat(repeat("a",32000)))),length(insert(repeat("a",48000),1,1000,repeat("a",48000)));
  56. #
  57. # Problem med concat
  58. #
  59. create table t1 ( domain char(50) );
  60. insert into t1 VALUES ("hello.de" ), ("test.de" );
  61. select domain from t1 where concat('@', trim(leading '.' from concat('.', domain))) = '@hello.de';
  62. select domain from t1 where concat('@', trim(leading '.' from concat('.', domain))) = '@test.de';
  63. drop table t1;