~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to tests/r/func_str.result

  • Committer: Brian Aker
  • Date: 2010-02-07 01:33:54 UTC
  • Revision ID: brian@gaz-20100207013354-d2pg1n68u5c09pgo
Remove giant include header to its own file.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
drop table if exists t1,t2;
2
 
set names latin1;
3
2
select 'hello',"'hello'",'""hello""','''h''e''l''l''o''',"hel""lo",'hel\'lo';
4
3
hello   'hello' ""hello""       'h'e'l'l'o'     hel"lo  hel'lo
5
4
hello   'hello' ""hello""       'h'e'l'l'o'     hel"lo  hel'lo
9
8
select length('\n\t\r\b\0\_\%\\');
10
9
length('\n\t\r\b\0\_\%\\')
11
10
10
12
 
select bit_length('\n\t\r\b\0\_\%\\');
13
 
bit_length('\n\t\r\b\0\_\%\\')
14
 
80
15
11
select char_length('\n\t\r\b\0\_\%\\');
16
12
char_length('\n\t\r\b\0\_\%\\')
17
13
10
18
 
select length(_latin1'\n\t\n\b\0\\_\\%\\');
19
 
length(_latin1'\n\t\n\b\0\\_\\%\\')
 
14
select character_length('\n\t\r\b\0\_\%\\');
 
15
character_length('\n\t\r\b\0\_\%\\')
 
16
10
 
17
select length('\n\t\n\b\0\\_\\%\\');
 
18
length('\n\t\n\b\0\\_\\%\\')
20
19
10
21
20
select concat('monty',' was here ','again'),length('hello'),char(ascii('h')),ord('h');
22
21
concat('monty',' was here ','again')    length('hello') char(ascii('h'))        ord('h')
95
94
1
96
95
select substring_index('aaaaaaaaa1','aa',-1);
97
96
substring_index('aaaaaaaaa1','aa',-1)
98
 
1
 
97
a1
99
98
select substring_index('aaaaaaaaa1','aa',-2);
100
99
substring_index('aaaaaaaaa1','aa',-2)
101
 
aa1
 
100
aaa1
102
101
select substring_index('aaaaaaaaa1','aa',-3);
103
102
substring_index('aaaaaaaaa1','aa',-3)
104
 
aaaa1
 
103
aaaaa1
105
104
select substring_index('aaaaaaaaa1','aa',-4);
106
105
substring_index('aaaaaaaaa1','aa',-4)
107
 
aaaaaa1
 
106
aaaaaaa1
108
107
select substring_index('aaaaaaaaa1','aa',-5);
109
108
substring_index('aaaaaaaaa1','aa',-5)
110
109
aaaaaaaaa1
119
118
aaaaaa1
120
119
select substring_index('aaaaaaaaa1','aaa',-4);
121
120
substring_index('aaaaaaaaa1','aaa',-4)
122
 
 
 
121
aaaaaaaaa1
123
122
select substring_index('the king of thethe hill','the',-2);
124
123
substring_index('the king of thethe hill','the',-2)
125
124
the hill
210
209
select replace(concat(lcase(concat('THIS',' ','IS',' ','A',' ')),ucase('false'),' ','test'),'FALSE','REAL') ;
211
210
replace(concat(lcase(concat('THIS',' ','IS',' ','A',' ')),ucase('false'),' ','test'),'FALSE','REAL')
212
211
this is a REAL test
213
 
select soundex(''),soundex('he'),soundex('hello all folks'),soundex('#3556 in bugdb');
214
 
soundex('')     soundex('he')   soundex('hello all folks')      soundex('#3556 in bugdb')
215
 
        H000    H4142   I51231
216
 
select 'mood' sounds like 'mud';
217
 
'mood' sounds like 'mud'
218
 
1
219
 
select 'Glazgo' sounds like 'Liverpool';
220
 
'Glazgo' sounds like 'Liverpool'
221
 
0
222
 
select null sounds like 'null';
223
 
null sounds like 'null'
224
 
NULL
225
 
select 'null' sounds like null;
226
 
'null' sounds like null
227
 
NULL
228
 
select null sounds like null;
229
 
null sounds like null
230
 
NULL
231
 
select md5('hello');
232
 
md5('hello')
233
 
5d41402abc4b2a76b9719d911017c592
234
212
select crc32("123");
235
213
crc32("123")
236
214
2286445522
237
 
select sha('abc');
238
 
sha('abc')
239
 
a9993e364706816aba3e25717850c26c9cd0d89d
240
 
select sha1('abc');
241
 
sha1('abc')
242
 
a9993e364706816aba3e25717850c26c9cd0d89d
243
 
select aes_decrypt(aes_encrypt('abc','1'),'1');
244
 
aes_decrypt(aes_encrypt('abc','1'),'1')
245
 
abc
246
 
select aes_decrypt(aes_encrypt('abc','1'),1);
247
 
aes_decrypt(aes_encrypt('abc','1'),1)
248
 
abc
249
 
select aes_encrypt(NULL,"a");
250
 
aes_encrypt(NULL,"a")
251
 
NULL
252
 
select aes_encrypt("a",NULL);
253
 
aes_encrypt("a",NULL)
254
 
NULL
255
 
select aes_decrypt(NULL,"a");
256
 
aes_decrypt(NULL,"a")
257
 
NULL
258
 
select aes_decrypt("a",NULL);
259
 
aes_decrypt("a",NULL)
260
 
NULL
261
 
select aes_decrypt("a","a");
262
 
aes_decrypt("a","a")
263
 
NULL
264
 
select aes_decrypt(aes_encrypt("","a"),"a");
265
 
aes_decrypt(aes_encrypt("","a"),"a")
266
 
 
267
215
select repeat('monty',5),concat('*',space(5),'*');
268
216
repeat('monty',5)       concat('*',space(5),'*')
269
217
montymontymontymontymonty       *     *
294
242
select LEAST(NULL,'HARRY','HARRIOT',NULL,'HAROLD'),GREATEST(NULL,'HARRY','HARRIOT',NULL,'HAROLD');
295
243
LEAST(NULL,'HARRY','HARRIOT',NULL,'HAROLD')     GREATEST(NULL,'HARRY','HARRIOT',NULL,'HAROLD')
296
244
NULL    NULL
297
 
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");
298
 
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")
299
 
33      4       1.0     1.0     1.1     9       B
300
 
select decode(encode(repeat("a",100000),"monty"),"monty")=repeat("a",100000);
301
 
decode(encode(repeat("a",100000),"monty"),"monty")=repeat("a",100000)
302
 
1
303
 
select decode(encode("abcdef","monty"),"monty")="abcdef";
304
 
decode(encode("abcdef","monty"),"monty")="abcdef"
305
 
1
306
245
select quote('\'\"\\test');
307
246
quote('\'\"\\test')
308
247
'\'"\\test'
312
251
select quote(1/0), quote('\0\Z');
313
252
quote(1/0)      quote('\0\Z')
314
253
NULL    '\0\Z'
 
254
Warnings:
 
255
Error   1365    Division by 0
315
256
select length(quote(concat(char(0),"test")));
316
257
length(quote(concat(char(0),"test")))
317
258
8
324
265
select hex(unhex("1")), hex(unhex("12")), hex(unhex("123")), hex(unhex("1234")), hex(unhex("12345")), hex(unhex("123456"));
325
266
hex(unhex("1")) hex(unhex("12"))        hex(unhex("123"))       hex(unhex("1234"))      hex(unhex("12345"))     hex(unhex("123456"))
326
267
01      12      0123    1234    012345  123456
327
 
select length(unhex(md5("abrakadabra")));
328
 
length(unhex(md5("abrakadabra")))
329
 
16
330
268
select concat('a', quote(NULL));
331
269
concat('a', quote(NULL))
332
270
aNULL
345
283
select ltrim("a"),rtrim("a"),trim(BOTH "" from "a"),trim(BOTH " " from "a");
346
284
ltrim("a")      rtrim("a")      trim(BOTH "" from "a")  trim(BOTH " " from "a")
347
285
a       a       a       a
348
 
select concat("1","2")|0,concat("1",".5")+0.0;
349
 
concat("1","2")|0       concat("1",".5")+0.0
350
 
12      1.5
351
286
select substring_index("www.tcx.se","",3);
352
287
substring_index("www.tcx.se","",3)
353
288
 
379
314
domain
380
315
test.de
381
316
drop table t1;
382
 
CREATE TABLE t1 (
383
 
id int(10) unsigned NOT NULL,
 
317
CREATE TEMPORARY TABLE t1 (
 
318
id int NOT NULL,
384
319
title varchar(255) default NULL,
385
 
prio int(10) unsigned default NULL,
386
 
category int(10) unsigned default NULL,
387
 
program int(10) unsigned default NULL,
 
320
prio int default NULL,
 
321
category int default NULL,
 
322
program int default NULL,
388
323
bugdesc text,
389
324
created datetime default NULL,
390
325
modified timestamp NOT NULL,
391
 
bugstatus int(10) unsigned default NULL,
392
 
submitter int(10) unsigned default NULL
 
326
bugstatus int default NULL,
 
327
submitter int default NULL
393
328
) ENGINE=MyISAM;
394
329
INSERT INTO t1 VALUES (1,'Link',1,1,1,'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa','2001-02-28 08:40:16',20010228084016,0,4);
395
330
SELECT CONCAT('"',CONCAT_WS('";"',title,prio,category,program,bugdesc,created,modified+0,bugstatus,submitter), '"') FROM t1;
405
340
bugdesc REPLACE(bugdesc, 'xxxxxxxxxxxxxxxxxxxx', 'bbbbbbbbbbbbbbbbbbbb')
406
341
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa      aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
407
342
drop table t1;
408
 
CREATE TABLE t1 (id int(11) NOT NULL auto_increment, tmp text NOT NULL, KEY id (id)) ENGINE=MyISAM;
 
343
CREATE TEMPORARY TABLE t1 (id int NOT NULL auto_increment, tmp text NOT NULL, KEY id (id)) ENGINE=MyISAM;
409
344
INSERT INTO t1 VALUES (1, 'a545f661efdd1fb66fdee3aab79945bf');
410
 
SELECT 1 FROM t1 WHERE tmp=AES_DECRYPT(tmp,"password");
411
 
1
412
345
DROP TABLE t1;
413
346
CREATE TABLE t1 (
414
 
wid int(10) unsigned NOT NULL auto_increment,
 
347
wid int NOT NULL auto_increment,
415
348
data_podp date default NULL,
416
349
status_wnio enum('nowy','podp','real','arch') NOT NULL default 'nowy',
417
350
PRIMARY KEY(wid)
423
356
NULL
424
357
NULL
425
358
DROP TABLE t1;
426
 
CREATE TABLE t1 (title text) ENGINE=MyISAM;
 
359
CREATE TEMPORARY TABLE t1 (title text) ENGINE=MyISAM;
427
360
INSERT INTO t1 VALUES ('Congress reconvenes in September to debate welfare and adult education');
428
361
INSERT INTO t1 VALUES ('House passes the CAREERS bill');
429
362
SELECT CONCAT("</a>",RPAD("",(55 - LENGTH(title)),".")) from t1;
466
399
'A'
467
400
'A'
468
401
DROP TABLE t1;
469
 
select 1=_latin1'1';
470
 
1=_latin1'1'
471
 
1
472
 
select _latin1'1'=1;
473
 
_latin1'1'=1
474
 
1
475
 
select _latin2'1'=1;
476
 
_latin2'1'=1
477
 
1
478
 
select 1=_latin2'1';
479
 
1=_latin2'1'
480
 
1
481
 
select _latin1'1'=_latin2'1';
482
 
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,COERCIBLE) and (latin2_general_ci,COERCIBLE) for operation '='
483
 
select row('a','b','c') = row('a','b','c');
484
 
row('a','b','c') = row('a','b','c')
485
 
1
486
 
select row('A','b','c') = row('a','b','c');
487
 
row('A','b','c') = row('a','b','c')
488
 
1
489
 
select row('A' COLLATE latin1_bin,'b','c') = row('a','b','c');
490
 
row('A' COLLATE latin1_bin,'b','c') = row('a','b','c')
491
 
0
492
 
select row('A','b','c') = row('a' COLLATE latin1_bin,'b','c');
493
 
row('A','b','c') = row('a' COLLATE latin1_bin,'b','c')
494
 
0
495
 
select row('A' COLLATE latin1_general_ci,'b','c') = row('a' COLLATE latin1_bin,'b','c');
496
 
ERROR HY000: Illegal mix of collations (latin1_general_ci,EXPLICIT) and (latin1_bin,EXPLICIT) for operation '='
497
 
select concat(_latin1'a',_latin2'a');
498
 
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,COERCIBLE) and (latin2_general_ci,COERCIBLE) for operation 'concat'
499
 
select concat(_latin1'a',_latin2'a',_latin5'a');
500
 
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,COERCIBLE), (latin2_general_ci,COERCIBLE), (latin5_turkish_ci,COERCIBLE) for operation 'concat'
501
 
select concat(_latin1'a',_latin2'a',_latin5'a',_latin7'a');
502
 
ERROR HY000: Illegal mix of collations for operation 'concat'
503
 
select concat_ws(_latin1'a',_latin2'a');
504
 
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,COERCIBLE) and (latin2_general_ci,COERCIBLE) for operation 'concat_ws'
505
 
select FIELD('b','A','B');
506
 
FIELD('b','A','B')
507
 
2
508
 
select FIELD('B','A','B');
509
 
FIELD('B','A','B')
510
 
2
511
 
select FIELD('b' COLLATE latin1_bin,'A','B');
512
 
FIELD('b' COLLATE latin1_bin,'A','B')
513
 
0
514
 
select FIELD('b','A' COLLATE latin1_bin,'B');
515
 
FIELD('b','A' COLLATE latin1_bin,'B')
516
 
0
517
 
select FIELD(_latin2'b','A','B');
518
 
ERROR HY000: Illegal mix of collations (latin2_general_ci,COERCIBLE), (latin1_swedish_ci,COERCIBLE), (latin1_swedish_ci,COERCIBLE) for operation 'field'
519
 
select FIELD('b',_latin2'A','B');
520
 
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,COERCIBLE), (latin2_general_ci,COERCIBLE), (latin1_swedish_ci,COERCIBLE) for operation 'field'
521
 
select FIELD('1',_latin2'3','2',1);
522
 
FIELD('1',_latin2'3','2',1)
523
 
3
524
 
select POSITION(_latin1'B' IN _latin1'abcd');
525
 
POSITION(_latin1'B' IN _latin1'abcd')
526
 
2
527
 
select POSITION(_latin1'B' IN _latin1'abcd' COLLATE latin1_bin);
528
 
POSITION(_latin1'B' IN _latin1'abcd' COLLATE latin1_bin)
529
 
0
530
 
select POSITION(_latin1'B' COLLATE latin1_bin IN _latin1'abcd');
531
 
POSITION(_latin1'B' COLLATE latin1_bin IN _latin1'abcd')
532
 
0
533
 
select POSITION(_latin1'B' COLLATE latin1_general_ci IN _latin1'abcd' COLLATE latin1_bin);
534
 
ERROR HY000: Illegal mix of collations (latin1_bin,EXPLICIT) and (latin1_general_ci,EXPLICIT) for operation 'locate'
535
 
select POSITION(_latin1'B' IN _latin2'abcd');
536
 
ERROR HY000: Illegal mix of collations (latin2_general_ci,COERCIBLE) and (latin1_swedish_ci,COERCIBLE) for operation 'locate'
537
 
select FIND_IN_SET(_latin1'B',_latin1'a,b,c,d');
538
 
FIND_IN_SET(_latin1'B',_latin1'a,b,c,d')
539
 
2
540
 
select FIND_IN_SET(_latin1'B' COLLATE latin1_general_ci,_latin1'a,b,c,d' COLLATE latin1_bin);
541
 
ERROR HY000: Illegal mix of collations (latin1_general_ci,EXPLICIT) and (latin1_bin,EXPLICIT) for operation 'find_in_set'
542
 
select FIND_IN_SET(_latin1'B',_latin2'a,b,c,d');
543
 
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,COERCIBLE) and (latin2_general_ci,COERCIBLE) for operation 'find_in_set'
544
 
select SUBSTRING_INDEX(_latin1'abcdabcdabcd',_latin1'd',2);
545
 
SUBSTRING_INDEX(_latin1'abcdabcdabcd',_latin1'd',2)
546
 
abcdabc
547
 
select SUBSTRING_INDEX(_latin1'abcdabcdabcd',_latin2'd',2);
548
 
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,COERCIBLE) and (latin2_general_ci,COERCIBLE) for operation 'substring_index'
549
 
select SUBSTRING_INDEX(_latin1'abcdabcdabcd' COLLATE latin1_general_ci,_latin1'd' COLLATE latin1_bin,2);
550
 
ERROR HY000: Illegal mix of collations (latin1_general_ci,EXPLICIT) and (latin1_bin,EXPLICIT) for operation 'substring_index'
551
 
select _latin1'B' between _latin1'a' and _latin1'c';
552
 
_latin1'B' between _latin1'a' and _latin1'c'
553
 
1
554
 
select _latin1'B' collate latin1_bin between _latin1'a' and _latin1'c';
555
 
_latin1'B' collate latin1_bin between _latin1'a' and _latin1'c'
556
 
0
557
 
select _latin1'B' between _latin1'a' collate latin1_bin and _latin1'c';
558
 
_latin1'B' between _latin1'a' collate latin1_bin and _latin1'c'
559
 
0
560
 
select _latin1'B' between _latin1'a' and _latin1'c' collate latin1_bin;
561
 
_latin1'B' between _latin1'a' and _latin1'c' collate latin1_bin
562
 
0
563
 
select _latin2'B' between _latin1'a' and _latin1'b';
564
 
ERROR HY000: Illegal mix of collations (latin2_general_ci,COERCIBLE), (latin1_swedish_ci,COERCIBLE), (latin1_swedish_ci,COERCIBLE) for operation 'between'
565
 
select _latin1'B' between _latin2'a' and _latin1'b';
566
 
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,COERCIBLE), (latin2_general_ci,COERCIBLE), (latin1_swedish_ci,COERCIBLE) for operation 'between'
567
 
select _latin1'B' between _latin1'a' and _latin2'b';
568
 
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,COERCIBLE), (latin1_swedish_ci,COERCIBLE), (latin2_general_ci,COERCIBLE) for operation 'between'
569
 
select _latin1'B' collate latin1_general_ci between _latin1'a' collate latin1_bin and _latin1'b';
570
 
ERROR HY000: Illegal mix of collations (latin1_general_ci,EXPLICIT), (latin1_bin,EXPLICIT), (latin1_swedish_ci,COERCIBLE) for operation 'between'
571
 
select _latin1'B' in (_latin1'a',_latin1'b');
572
 
_latin1'B' in (_latin1'a',_latin1'b')
573
 
1
574
 
select _latin1'B' collate latin1_bin in (_latin1'a',_latin1'b');
575
 
_latin1'B' collate latin1_bin in (_latin1'a',_latin1'b')
576
 
0
577
 
select _latin1'B' in (_latin1'a' collate latin1_bin,_latin1'b');
578
 
_latin1'B' in (_latin1'a' collate latin1_bin,_latin1'b')
579
 
0
580
 
select _latin1'B' in (_latin1'a',_latin1'b' collate latin1_bin);
581
 
_latin1'B' in (_latin1'a',_latin1'b' collate latin1_bin)
582
 
0
583
 
select _latin2'B' in (_latin1'a',_latin1'b');
584
 
ERROR HY000: Illegal mix of collations (latin2_general_ci,COERCIBLE), (latin1_swedish_ci,COERCIBLE), (latin1_swedish_ci,COERCIBLE) for operation ' IN '
585
 
select _latin1'B' in (_latin2'a',_latin1'b');
586
 
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,COERCIBLE), (latin2_general_ci,COERCIBLE), (latin1_swedish_ci,COERCIBLE) for operation ' IN '
587
 
select _latin1'B' in (_latin1'a',_latin2'b');
588
 
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,COERCIBLE), (latin1_swedish_ci,COERCIBLE), (latin2_general_ci,COERCIBLE) for operation ' IN '
589
 
select _latin1'B' COLLATE latin1_general_ci in (_latin1'a' COLLATE latin1_bin,_latin1'b');
590
 
ERROR HY000: Illegal mix of collations (latin1_general_ci,EXPLICIT), (latin1_bin,EXPLICIT), (latin1_swedish_ci,COERCIBLE) for operation ' IN '
591
 
select _latin1'B' COLLATE latin1_general_ci in (_latin1'a',_latin1'b' COLLATE latin1_bin);
592
 
ERROR HY000: Illegal mix of collations (latin1_general_ci,EXPLICIT), (latin1_swedish_ci,COERCIBLE), (latin1_bin,EXPLICIT) for operation ' IN '
593
 
select collation(bin(130)), coercibility(bin(130));
594
 
collation(bin(130))     coercibility(bin(130))
595
 
latin1_swedish_ci       4
596
 
select collation(oct(130)), coercibility(oct(130));
597
 
collation(oct(130))     coercibility(oct(130))
598
 
latin1_swedish_ci       4
599
 
select collation(conv(130,16,10)), coercibility(conv(130,16,10));
600
 
collation(conv(130,16,10))      coercibility(conv(130,16,10))
601
 
latin1_swedish_ci       4
602
 
select collation(hex(130)), coercibility(hex(130));
603
 
collation(hex(130))     coercibility(hex(130))
604
 
latin1_swedish_ci       4
605
 
select collation(char(130)), coercibility(hex(130));
606
 
collation(char(130))    coercibility(hex(130))
607
 
binary  4
608
 
select collation(format(130,10)), coercibility(format(130,10));
609
 
collation(format(130,10))       coercibility(format(130,10))
610
 
latin1_swedish_ci       4
611
 
select collation(lcase(_latin2'a')), coercibility(lcase(_latin2'a'));
612
 
collation(lcase(_latin2'a'))    coercibility(lcase(_latin2'a'))
613
 
latin2_general_ci       4
614
 
select collation(ucase(_latin2'a')), coercibility(ucase(_latin2'a'));
615
 
collation(ucase(_latin2'a'))    coercibility(ucase(_latin2'a'))
616
 
latin2_general_ci       4
617
 
select collation(left(_latin2'a',1)), coercibility(left(_latin2'a',1));
618
 
collation(left(_latin2'a',1))   coercibility(left(_latin2'a',1))
619
 
latin2_general_ci       4
620
 
select collation(right(_latin2'a',1)), coercibility(right(_latin2'a',1));
621
 
collation(right(_latin2'a',1))  coercibility(right(_latin2'a',1))
622
 
latin2_general_ci       4
623
 
select collation(substring(_latin2'a',1,1)), coercibility(substring(_latin2'a',1,1));
624
 
collation(substring(_latin2'a',1,1))    coercibility(substring(_latin2'a',1,1))
625
 
latin2_general_ci       4
626
 
select collation(concat(_latin2'a',_latin2'b')), coercibility(concat(_latin2'a',_latin2'b'));
627
 
collation(concat(_latin2'a',_latin2'b'))        coercibility(concat(_latin2'a',_latin2'b'))
628
 
latin2_general_ci       4
629
 
select collation(lpad(_latin2'a',4,_latin2'b')), coercibility(lpad(_latin2'a',4,_latin2'b'));
630
 
collation(lpad(_latin2'a',4,_latin2'b'))        coercibility(lpad(_latin2'a',4,_latin2'b'))
631
 
latin2_general_ci       4
632
 
select collation(rpad(_latin2'a',4,_latin2'b')), coercibility(rpad(_latin2'a',4,_latin2'b'));
633
 
collation(rpad(_latin2'a',4,_latin2'b'))        coercibility(rpad(_latin2'a',4,_latin2'b'))
634
 
latin2_general_ci       4
635
 
select collation(concat_ws(_latin2'a',_latin2'b')), coercibility(concat_ws(_latin2'a',_latin2'b'));
636
 
collation(concat_ws(_latin2'a',_latin2'b'))     coercibility(concat_ws(_latin2'a',_latin2'b'))
637
 
latin2_general_ci       4
638
 
select collation(make_set(255,_latin2'a',_latin2'b',_latin2'c')), coercibility(make_set(255,_latin2'a',_latin2'b',_latin2'c'));
639
 
collation(make_set(255,_latin2'a',_latin2'b',_latin2'c'))       coercibility(make_set(255,_latin2'a',_latin2'b',_latin2'c'))
640
 
latin2_general_ci       4
641
 
select collation(export_set(255,_latin2'y',_latin2'n',_latin2' ')), coercibility(export_set(255,_latin2'y',_latin2'n',_latin2' '));
642
 
collation(export_set(255,_latin2'y',_latin2'n',_latin2' '))     coercibility(export_set(255,_latin2'y',_latin2'n',_latin2' '))
643
 
latin2_general_ci       4
644
 
select collation(trim(_latin2' a ')), coercibility(trim(_latin2' a '));
645
 
collation(trim(_latin2' a '))   coercibility(trim(_latin2' a '))
646
 
latin2_general_ci       4
647
 
select collation(ltrim(_latin2' a ')), coercibility(ltrim(_latin2' a '));
648
 
collation(ltrim(_latin2' a '))  coercibility(ltrim(_latin2' a '))
649
 
latin2_general_ci       4
650
 
select collation(rtrim(_latin2' a ')), coercibility(rtrim(_latin2' a '));
651
 
collation(rtrim(_latin2' a '))  coercibility(rtrim(_latin2' a '))
652
 
latin2_general_ci       4
653
 
select collation(trim(LEADING _latin2' ' FROM _latin2'a')), coercibility(trim(LEADING _latin2'a' FROM _latin2'a'));
654
 
collation(trim(LEADING _latin2' ' FROM _latin2'a'))     coercibility(trim(LEADING _latin2'a' FROM _latin2'a'))
655
 
latin2_general_ci       4
656
 
select collation(trim(TRAILING _latin2' ' FROM _latin2'a')), coercibility(trim(TRAILING _latin2'a' FROM _latin2'a'));
657
 
collation(trim(TRAILING _latin2' ' FROM _latin2'a'))    coercibility(trim(TRAILING _latin2'a' FROM _latin2'a'))
658
 
latin2_general_ci       4
659
 
select collation(trim(BOTH _latin2' ' FROM _latin2'a')), coercibility(trim(BOTH _latin2'a' FROM _latin2'a'));
660
 
collation(trim(BOTH _latin2' ' FROM _latin2'a'))        coercibility(trim(BOTH _latin2'a' FROM _latin2'a'))
661
 
latin2_general_ci       4
662
 
select collation(repeat(_latin2'a',10)), coercibility(repeat(_latin2'a',10));
663
 
collation(repeat(_latin2'a',10))        coercibility(repeat(_latin2'a',10))
664
 
latin2_general_ci       4
665
 
select collation(reverse(_latin2'ab')), coercibility(reverse(_latin2'ab'));
666
 
collation(reverse(_latin2'ab')) coercibility(reverse(_latin2'ab'))
667
 
latin2_general_ci       4
668
 
select collation(quote(_latin2'ab')), coercibility(quote(_latin2'ab'));
669
 
collation(quote(_latin2'ab'))   coercibility(quote(_latin2'ab'))
670
 
latin2_general_ci       4
671
 
select collation(soundex(_latin2'ab')), coercibility(soundex(_latin2'ab'));
672
 
collation(soundex(_latin2'ab')) coercibility(soundex(_latin2'ab'))
673
 
latin2_general_ci       4
674
 
select collation(substring(_latin2'ab',1)), coercibility(substring(_latin2'ab',1));
675
 
collation(substring(_latin2'ab',1))     coercibility(substring(_latin2'ab',1))
676
 
latin2_general_ci       4
677
 
select collation(insert(_latin2'abcd',2,3,_latin2'ef')), coercibility(insert(_latin2'abcd',2,3,_latin2'ef'));
678
 
collation(insert(_latin2'abcd',2,3,_latin2'ef'))        coercibility(insert(_latin2'abcd',2,3,_latin2'ef'))
679
 
latin2_general_ci       4
680
 
select collation(replace(_latin2'abcd',_latin2'b',_latin2'B')), coercibility(replace(_latin2'abcd',_latin2'b',_latin2'B'));
681
 
collation(replace(_latin2'abcd',_latin2'b',_latin2'B')) coercibility(replace(_latin2'abcd',_latin2'b',_latin2'B'))
682
 
latin2_general_ci       4
683
 
select collation(encode('abcd','ab')), coercibility(encode('abcd','ab'));
684
 
collation(encode('abcd','ab'))  coercibility(encode('abcd','ab'))
685
 
binary  4
686
 
create table t1 
687
 
select
688
 
bin(130),
689
 
oct(130),
690
 
conv(130,16,10),
691
 
hex(130),
692
 
char(130),
693
 
format(130,10),
694
 
left(_latin2'a',1),
695
 
right(_latin2'a',1), 
696
 
lcase(_latin2'a'), 
697
 
ucase(_latin2'a'),
698
 
substring(_latin2'a',1,1),
699
 
concat(_latin2'a',_latin2'b'),
700
 
lpad(_latin2'a',4,_latin2'b'),
701
 
rpad(_latin2'a',4,_latin2'b'),
702
 
concat_ws(_latin2'a',_latin2'b'),
703
 
make_set(255,_latin2'a',_latin2'b',_latin2'c'),
704
 
export_set(255,_latin2'y',_latin2'n',_latin2' '),
705
 
trim(_latin2' a '),
706
 
ltrim(_latin2' a '),
707
 
rtrim(_latin2' a '),
708
 
trim(LEADING _latin2' ' FROM _latin2' a '),
709
 
trim(TRAILING _latin2' ' FROM _latin2' a '),
710
 
trim(BOTH _latin2' ' FROM _latin2' a '),
711
 
repeat(_latin2'a',10),
712
 
reverse(_latin2'ab'),
713
 
quote(_latin2'ab'),
714
 
soundex(_latin2'ab'),
715
 
substring(_latin2'ab',1),
716
 
insert(_latin2'abcd',2,3,_latin2'ef'),
717
 
replace(_latin2'abcd',_latin2'b',_latin2'B'),
718
 
encode('abcd','ab')
719
 
;
720
 
Warnings:
721
 
Warning 1265    Data truncated for column 'format(130,10)' at row 1
722
 
show create table t1;
723
 
Table   Create Table
724
 
t1      CREATE TABLE `t1` (
725
 
  `bin(130)` varchar(64) DEFAULT NULL,
726
 
  `oct(130)` varchar(64) DEFAULT NULL,
727
 
  `conv(130,16,10)` varchar(64) DEFAULT NULL,
728
 
  `hex(130)` varchar(6) NOT NULL DEFAULT '',
729
 
  `char(130)` varbinary(4) NOT NULL DEFAULT '',
730
 
  `format(130,10)` varchar(4) NOT NULL DEFAULT '',
731
 
  `left(_latin2'a',1)` varchar(1) CHARACTER SET latin2 NOT NULL DEFAULT '',
732
 
  `right(_latin2'a',1)` varchar(1) CHARACTER SET latin2 NOT NULL DEFAULT '',
733
 
  `lcase(_latin2'a')` varchar(1) CHARACTER SET latin2 NOT NULL DEFAULT '',
734
 
  `ucase(_latin2'a')` varchar(1) CHARACTER SET latin2 NOT NULL DEFAULT '',
735
 
  `substring(_latin2'a',1,1)` varchar(1) CHARACTER SET latin2 NOT NULL DEFAULT '',
736
 
  `concat(_latin2'a',_latin2'b')` varchar(2) CHARACTER SET latin2 NOT NULL DEFAULT '',
737
 
  `lpad(_latin2'a',4,_latin2'b')` varchar(4) CHARACTER SET latin2 NOT NULL DEFAULT '',
738
 
  `rpad(_latin2'a',4,_latin2'b')` varchar(4) CHARACTER SET latin2 NOT NULL DEFAULT '',
739
 
  `concat_ws(_latin2'a',_latin2'b')` varchar(1) CHARACTER SET latin2 NOT NULL DEFAULT '',
740
 
  `make_set(255,_latin2'a',_latin2'b',_latin2'c')` varchar(5) CHARACTER SET latin2 NOT NULL DEFAULT '',
741
 
  `export_set(255,_latin2'y',_latin2'n',_latin2' ')` varchar(127) CHARACTER SET latin2 NOT NULL DEFAULT '',
742
 
  `trim(_latin2' a ')` varchar(3) CHARACTER SET latin2 NOT NULL DEFAULT '',
743
 
  `ltrim(_latin2' a ')` varchar(3) CHARACTER SET latin2 NOT NULL DEFAULT '',
744
 
  `rtrim(_latin2' a ')` varchar(3) CHARACTER SET latin2 NOT NULL DEFAULT '',
745
 
  `trim(LEADING _latin2' ' FROM _latin2' a ')` varchar(3) CHARACTER SET latin2 NOT NULL DEFAULT '',
746
 
  `trim(TRAILING _latin2' ' FROM _latin2' a ')` varchar(3) CHARACTER SET latin2 NOT NULL DEFAULT '',
747
 
  `trim(BOTH _latin2' ' FROM _latin2' a ')` varchar(3) CHARACTER SET latin2 NOT NULL DEFAULT '',
748
 
  `repeat(_latin2'a',10)` varchar(10) CHARACTER SET latin2 NOT NULL DEFAULT '',
749
 
  `reverse(_latin2'ab')` varchar(2) CHARACTER SET latin2 NOT NULL DEFAULT '',
750
 
  `quote(_latin2'ab')` varchar(6) CHARACTER SET latin2 NOT NULL DEFAULT '',
751
 
  `soundex(_latin2'ab')` varchar(4) CHARACTER SET latin2 NOT NULL DEFAULT '',
752
 
  `substring(_latin2'ab',1)` varchar(2) CHARACTER SET latin2 NOT NULL DEFAULT '',
753
 
  `insert(_latin2'abcd',2,3,_latin2'ef')` varchar(6) CHARACTER SET latin2 NOT NULL DEFAULT '',
754
 
  `replace(_latin2'abcd',_latin2'b',_latin2'B')` varchar(4) CHARACTER SET latin2 NOT NULL DEFAULT '',
755
 
  `encode('abcd','ab')` varbinary(4) NOT NULL DEFAULT ''
756
 
) ENGINE=MyISAM DEFAULT CHARSET=latin1
757
 
drop table t1;
758
 
create table t1 (a char character set latin2);
759
 
insert into t1 values (null);
760
 
select charset(a), collation(a), coercibility(a) from t1;
761
 
charset(a)      collation(a)    coercibility(a)
762
 
latin2  latin2_general_ci       2
763
 
drop table t1;
764
 
select charset(null), collation(null), coercibility(null);
765
 
charset(null)   collation(null) coercibility(null)
766
 
binary  binary  5
767
 
CREATE TABLE t1 (a int, b int);
768
 
CREATE TABLE t2 (a int, b int);
769
 
INSERT INTO t1 VALUES (1,1),(2,2);
770
 
INSERT INTO t2 VALUES (2,2),(3,3);
771
 
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
772
 
where collation(t2.a) = _utf8'binary' order by t1.a,t2.a;
773
 
a       b       a       b
774
 
1       1       NULL    NULL
775
 
2       2       2       2
776
 
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
777
 
where charset(t2.a) = _utf8'binary' order by t1.a,t2.a;
778
 
a       b       a       b
779
 
1       1       NULL    NULL
780
 
2       2       2       2
781
 
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
782
 
where coercibility(t2.a) = 2 order by t1.a,t2.a;
783
 
a       b       a       b
784
 
1       1       NULL    NULL
785
 
2       2       2       2
786
 
DROP TABLE t1, t2;
787
402
select SUBSTR('abcdefg',3,2);
788
403
SUBSTR('abcdefg',3,2)
789
404
cd
790
405
select SUBSTRING('abcdefg',3,2);
791
406
SUBSTRING('abcdefg',3,2)
792
407
cd
793
 
select SUBSTR('abcdefg',-3,2) FROM DUAL;
 
408
select SUBSTR('abcdefg',-3,2);
794
409
SUBSTR('abcdefg',-3,2)
795
410
ef
796
 
select SUBSTR('abcdefg',-1,5) FROM DUAL;
 
411
select SUBSTR('abcdefg',-1,5);
797
412
SUBSTR('abcdefg',-1,5)
798
413
g
799
 
select SUBSTR('abcdefg',0,0) FROM DUAL;
 
414
select SUBSTR('abcdefg',0,0);
800
415
SUBSTR('abcdefg',0,0)
801
416
 
802
 
select SUBSTR('abcdefg',-1,-1) FROM DUAL;
 
417
select SUBSTR('abcdefg',-1,-1);
803
418
SUBSTR('abcdefg',-1,-1)
804
419
 
805
 
select SUBSTR('abcdefg',1,-1) FROM DUAL;
 
420
select SUBSTR('abcdefg',1,-1);
806
421
SUBSTR('abcdefg',1,-1)
807
422
 
808
 
create table t7 (s1 char);
809
 
select * from t7
810
 
where concat(s1 collate latin1_general_ci,s1 collate latin1_swedish_ci) = 'AA';
811
 
ERROR HY000: Illegal mix of collations (latin1_general_ci,EXPLICIT) and (latin1_swedish_ci,EXPLICIT) for operation 'concat'
812
 
drop table t7;
813
423
select substring_index("1abcd;2abcd;3abcd;4abcd", ';', 2),substring_index("1abcd;2abcd;3abcd;4abcd", ';', -2);
814
424
substring_index("1abcd;2abcd;3abcd;4abcd", ';', 2)      substring_index("1abcd;2abcd;3abcd;4abcd", ';', -2)
815
425
1abcd;2abcd     3abcd;4abcd
816
 
explain extended select md5('hello');
817
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
818
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
819
 
Warnings:
820
 
Note    1003    select md5('hello') AS `md5('hello')`
821
 
explain extended select sha('abc');
822
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
823
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
824
 
Warnings:
825
 
Note    1003    select sha('abc') AS `sha('abc')`
826
 
explain extended select sha1('abc');
827
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
828
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
829
 
Warnings:
830
 
Note    1003    select sha('abc') AS `sha1('abc')`
831
 
explain extended select soundex('');
832
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
833
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
834
 
Warnings:
835
 
Note    1003    select soundex('') AS `soundex('')`
836
 
explain extended select 'mood' sounds like 'mud';
837
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
838
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
839
 
Warnings:
840
 
Note    1003    select (soundex('mood') = soundex('mud')) AS `'mood' sounds like 'mud'`
841
 
explain extended select aes_decrypt(aes_encrypt('abc','1'),'1');
842
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
843
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
844
 
Warnings:
845
 
Note    1003    select aes_decrypt(aes_encrypt('abc','1'),'1') AS `aes_decrypt(aes_encrypt('abc','1'),'1')`
846
426
explain extended select concat('*',space(5),'*');
847
427
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
848
428
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
868
448
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
869
449
Warnings:
870
450
Note    1003    select concat_ws(',','',NULL,'a') AS `concat_ws(',','',NULL,'a')`
871
 
explain extended select make_set(255,_latin2'a', _latin2'b', _latin2'c');
872
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
873
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
874
 
Warnings:
875
 
Note    1003    select make_set(255,_latin2'a',_latin2'b',_latin2'c') AS `make_set(255,_latin2'a', _latin2'b', _latin2'c')`
876
451
explain extended select elt(2,1);
877
452
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
878
453
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
883
458
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
884
459
Warnings:
885
460
Note    1003    select locate('a','b',2) AS `locate("a","b",2)`
886
 
explain extended select format(130,10);
887
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
888
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
889
 
Warnings:
890
 
Note    1003    select format(130,10) AS `format(130,10)`
891
461
explain extended select char(0);
892
462
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
893
463
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
908
478
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
909
479
Warnings:
910
480
Note    1003    select cast('HE' as char charset binary) AS `binary 'HE'`
911
 
explain extended select export_set(255,_latin2'y', _latin2'n', _latin2' ');
912
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
913
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
914
 
Warnings:
915
 
Note    1003    select export_set(255,_latin2'y',_latin2'n',_latin2' ') AS `export_set(255,_latin2'y', _latin2'n', _latin2' ')`
916
 
explain extended select FIELD('b' COLLATE latin1_bin,'A','B');
917
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
918
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
919
 
Warnings:
920
 
Note    1003    select field(('b' collate latin1_bin),'A','B') AS `FIELD('b' COLLATE latin1_bin,'A','B')`
921
 
explain extended select FIND_IN_SET(_latin1'B', _latin1'a,b,c,d');
922
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
923
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
924
 
Warnings:
925
 
Note    1003    select find_in_set(_latin1'B',_latin1'a,b,c,d') AS `FIND_IN_SET(_latin1'B', _latin1'a,b,c,d')`
926
481
explain extended select collation(conv(130,16,10));
927
482
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
928
483
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
938
493
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
939
494
Warnings:
940
495
Note    1003    select length('\n       \r\0\\_\\%\\') AS `length('\n\t\r\b\0\_\%\\')`
941
 
explain extended select bit_length('\n\t\r\b\0\_\%\\');
942
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
943
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
944
 
Warnings:
945
 
Note    1003    select bit_length('\n   \r\0\\_\\%\\') AS `bit_length('\n\t\r\b\0\_\%\\')`
946
 
explain extended select bit_length('\n\t\r\b\0\_\%\\');
947
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
948
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
949
 
Warnings:
950
 
Note    1003    select bit_length('\n   \r\0\\_\\%\\') AS `bit_length('\n\t\r\b\0\_\%\\')`
951
496
explain extended select concat('monty',' was here ','again');
952
497
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
953
498
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
988
533
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
989
534
Warnings:
990
535
Note    1003    select insert('txs',2,1,'hi') AS `insert('txs',2,1,'hi')`
991
 
explain extended select left(_latin2'a',1);
992
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
993
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
994
 
Warnings:
995
 
Note    1003    select left(_latin2'a',1) AS `left(_latin2'a',1)`
996
 
explain extended select right(_latin2'a',1);
997
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
998
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
999
 
Warnings:
1000
 
Note    1003    select right(_latin2'a',1) AS `right(_latin2'a',1)`
1001
 
explain extended select lcase(_latin2'a');
1002
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
1003
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
1004
 
Warnings:
1005
 
Note    1003    select lcase(_latin2'a') AS `lcase(_latin2'a')`
1006
 
explain extended select ucase(_latin2'a');
1007
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
1008
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
1009
 
Warnings:
1010
 
Note    1003    select ucase(_latin2'a') AS `ucase(_latin2'a')`
1011
536
explain extended select SUBSTR('abcdefg',3,2);
1012
537
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
1013
538
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
1018
543
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
1019
544
Warnings:
1020
545
Note    1003    select substring_index('1abcd;2abcd;3abcd;4abcd',';',2) AS `substring_index("1abcd;2abcd;3abcd;4abcd", ';', 2)`
1021
 
explain extended select trim(_latin2' a ');
1022
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
1023
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
1024
 
Warnings:
1025
 
Note    1003    select trim(_latin2' a ') AS `trim(_latin2' a ')`
1026
 
explain extended select ltrim(_latin2' a ');
1027
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
1028
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
1029
 
Warnings:
1030
 
Note    1003    select ltrim(_latin2' a ') AS `ltrim(_latin2' a ')`
1031
 
explain extended select rtrim(_latin2' a ');
1032
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
1033
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
1034
 
Warnings:
1035
 
Note    1003    select rtrim(_latin2' a ') AS `rtrim(_latin2' a ')`
1036
 
explain extended select decode(encode(repeat("a",100000),"monty"),"monty");
1037
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
1038
 
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    NULL    No tables used
1039
 
Warnings:
1040
 
Note    1003    select decode(encode(repeat('a',100000),'monty'),'monty') AS `decode(encode(repeat("a",100000),"monty"),"monty")`
1041
546
SELECT lpad(12345, 5, "#");
1042
547
lpad(12345, 5, "#")
1043
548
12345
1047
552
SELECT conv(71, 10, 37), conv('1Z', 37, 10), conv(0,1,10),conv(0,0,10), conv(0,-1,10);
1048
553
conv(71, 10, 37)        conv('1Z', 37, 10)      conv(0,1,10)    conv(0,0,10)    conv(0,-1,10)
1049
554
NULL    NULL    NULL    NULL    NULL
1050
 
create table t1 (id int(1), str varchar(10)) DEFAULT CHARSET=utf8;
 
555
create table t1 (id int, str varchar(10));
1051
556
insert into t1 values (1,'aaaaaaaaaa'), (2,'bbbbbbbbbb');
1052
 
create table t2 (id int(1), str varchar(10)) DEFAULT CHARSET=utf8;
 
557
create table t2 (id int, str varchar(10));
1053
558
insert into t2 values (1,'cccccccccc'), (2,'dddddddddd');
1054
559
select substring(concat(t1.str, t2.str), 1, 15) "name" from t1, t2 
1055
560
where t2.id=t1.id order by name;
1057
562
aaaaaaaaaaccccc
1058
563
bbbbbbbbbbddddd
1059
564
drop table t1, t2;
1060
 
create table t1 (c1 INT, c2 INT UNSIGNED);
 
565
create table t1 (c1 INT, c2 INT);
1061
566
insert into t1 values ('21474836461','21474836461');
1062
 
Warnings:
1063
 
Warning 1264    Out of range value for column 'c1' at row 1
1064
 
Warning 1264    Out of range value for column 'c2' at row 1
 
567
ERROR 22003: Out of range value for column 'c1' at row 1
1065
568
insert into t1 values ('-21474836461','-21474836461');
1066
 
Warnings:
1067
 
Warning 1264    Out of range value for column 'c1' at row 1
1068
 
Warning 1264    Out of range value for column 'c2' at row 1
1069
 
show warnings;
1070
 
Level   Code    Message
1071
 
Warning 1264    Out of range value for column 'c1' at row 1
1072
 
Warning 1264    Out of range value for column 'c2' at row 1
 
569
ERROR 22003: Out of range value for column 'c1' at row 1
1073
570
select * from t1;
1074
571
c1      c2
1075
 
2147483647      4294967295
1076
 
-2147483648     0
1077
572
drop table t1;
1078
573
select left(1234, 3) + 0;
1079
574
left(1234, 3) + 0
1096
591
select trim(trailing NULL from 'xyz') as "must_be_null";
1097
592
must_be_null
1098
593
NULL
1099
 
CREATE TABLE t1 (
1100
 
id int(11) NOT NULL auto_increment,
1101
 
a bigint(20) unsigned default NULL,
 
594
CREATE TEMPORARY TABLE t1 (
 
595
id int NOT NULL auto_increment,
 
596
a bigint default NULL,
1102
597
PRIMARY KEY  (id)
1103
598
) ENGINE=MyISAM;
1104
 
INSERT INTO t1 VALUES
1105
 
('0','16307858876001849059');
 
599
INSERT INTO t1 VALUES ('0','16307858876001849059');
 
600
ERROR 22003: Out of range value for column 'a' at row 1
1106
601
SELECT CONV('e251273eb74a8ee3', 16, 10);
1107
602
CONV('e251273eb74a8ee3', 16, 10)
1108
603
16307858876001849059
1111
606
FROM t1
1112
607
WHERE a = 16307858876001849059;
1113
608
id      select_type     table   type    possible_keys   key     key_len ref     rows    Extra
1114
 
1       SIMPLE  t1      system  NULL    NULL    NULL    NULL    1       
 
609
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    Impossible WHERE noticed after reading const tables
1115
610
EXPLAIN 
1116
611
SELECT id
1117
612
FROM t1
1118
613
WHERE a = CONV('e251273eb74a8ee3', 16, 10);
1119
614
id      select_type     table   type    possible_keys   key     key_len ref     rows    Extra
1120
 
1       SIMPLE  t1      system  NULL    NULL    NULL    NULL    1       
 
615
1       SIMPLE  NULL    NULL    NULL    NULL    NULL    NULL    NULL    Impossible WHERE noticed after reading const tables
1121
616
DROP TABLE t1;
1122
617
SELECT CHAR(NULL,121,83,81,'76') as my_column;
1123
618
my_column
1128
623
CREATE TABLE t1 (id int PRIMARY KEY, str char(255) NOT NULL);
1129
624
CREATE TABLE t2 (id int NOT NULL UNIQUE);
1130
625
INSERT INTO t2 VALUES (1),(2);
1131
 
INSERT INTO t1 VALUES (1, aes_encrypt('foo', 'bar'));
1132
626
INSERT INTO t1 VALUES (2, 'not valid');
1133
 
SELECT t1.id, aes_decrypt(str, 'bar') FROM t1, t2 WHERE t1.id = t2.id;
1134
 
id      aes_decrypt(str, 'bar')
1135
 
1       foo
1136
 
2       NULL
1137
 
SELECT t1.id, aes_decrypt(str, 'bar') FROM t1, t2 WHERE t1.id = t2.id
1138
 
ORDER BY t1.id;
1139
 
id      aes_decrypt(str, 'bar')
1140
 
1       foo
1141
 
2       NULL
1142
627
DROP TABLE t1, t2;
1143
628
select field(0,NULL,1,0), field("",NULL,"bar",""), field(0.0,NULL,1.0,0.0);
1144
629
field(0,NULL,1,0)       field("",NULL,"bar","") field(0.0,NULL,1.0,0.0)
1158
643
notnumber       0
1159
644
DROP TABLE t1,t2;
1160
645
CREATE TABLE t1(
1161
 
id int(11) NOT NULL auto_increment,
1162
 
pc int(11) NOT NULL default '0',
 
646
id int NOT NULL auto_increment,
 
647
pc int NOT NULL default '0',
1163
648
title varchar(20) default NULL,
1164
649
PRIMARY KEY (id)
1165
650
);
1182
667
2       Main->Toys
1183
668
DROP TABLE t1;
1184
669
CREATE TABLE t1(
1185
 
trackid     int(10) unsigned NOT NULL auto_increment,
 
670
trackid     int NOT NULL auto_increment,
1186
671
trackname   varchar(100) NOT NULL default '',
1187
672
PRIMARY KEY (trackid)
1188
673
);
1189
674
CREATE TABLE t2(
1190
 
artistid    int(10) unsigned NOT NULL auto_increment,
 
675
artistid    int NOT NULL auto_increment,
1191
676
artistname  varchar(100) NOT NULL default '',
1192
677
PRIMARY KEY (artistid)
1193
678
);
1194
679
CREATE TABLE t3(
1195
 
trackid     int(10) unsigned NOT NULL,
1196
 
artistid    int(10) unsigned NOT NULL,
 
680
trackid     int NOT NULL,
 
681
artistid    int NOT NULL,
1197
682
PRIMARY KEY (trackid,artistid)
1198
683
);
1199
684
INSERT INTO t1 VALUES (1, 'April In Paris'), (2, 'Autumn In New York');
1229
714
insert into t1 values (1000000000),(1);
1230
715
select lpad(i, 7, ' ') as t from t1;
1231
716
Catalog Database        Table   Table_alias     Column  Column_alias    Type    Length  Max length      Is_null Flags   Decimals        Charsetnr
1232
 
def                                     t       253     7       7       Y       128     31      63
 
717
def                                     t       8       7       7       Y       128     31      63
1233
718
t
1234
719
1000000
1235
720
      1
1236
721
select rpad(i, 7, ' ') as t from t1;
1237
722
Catalog Database        Table   Table_alias     Column  Column_alias    Type    Length  Max length      Is_null Flags   Decimals        Charsetnr
1238
 
def                                     t       253     7       7       Y       128     31      63
 
723
def                                     t       8       7       7       Y       128     31      63
1239
724
t
1240
725
1000000
1241
726
1      
1246
731
select ifnull(load_file("lkjlkj"),"it's null");
1247
732
ifnull(load_file("lkjlkj"),"it's null")
1248
733
it's null
1249
 
create table t1 (f1 varchar(4), f2 varchar(64), unique key k1 (f1,f2));
1250
 
insert into t1 values ( 'test',md5('test')), ('test', sha('test'));
1251
 
select * from t1 where f1='test' and (f2= md5("test") or f2= md5("TEST"));
1252
 
f1      f2
1253
 
test    098f6bcd4621d373cade4e832627b4f6
1254
 
select * from t1 where f1='test' and (f2= md5("TEST") or f2= md5("test"));
1255
 
f1      f2
1256
 
test    098f6bcd4621d373cade4e832627b4f6
1257
 
select * from t1 where f1='test' and (f2= sha("test") or f2= sha("TEST"));
1258
 
f1      f2
1259
 
test    a94a8fe5ccb19ba61c4c0873d391e987982fbbd3
1260
 
select * from t1 where f1='test' and (f2= sha("TEST") or f2= sha("test"));
1261
 
f1      f2
1262
 
test    a94a8fe5ccb19ba61c4c0873d391e987982fbbd3
1263
 
drop table t1;
1264
734
CREATE TABLE t1 (a varchar(10));
1265
735
INSERT INTO t1 VALUES ('abc'), ('xyz');
1266
736
SELECT a, CONCAT(a,' ',a) AS c FROM t1
1304
774
Warnings:
1305
775
Note    1003    select `test`.`t1`.`s` AS `s` from `test`.`t1` where (trim(both 'y' from `test`.`t1`.`s`) > 'ab')
1306
776
DROP TABLE t1;
1307
 
create table t1(f1 varchar(4));
1308
 
explain extended select encode(f1,'zxcv') as 'enc' from t1;
1309
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
1310
 
1       SIMPLE  t1      system  NULL    NULL    NULL    NULL    0       0.00    const row not found
1311
 
Warnings:
1312
 
Note    1003    select encode('','zxcv') AS `enc` from `test`.`t1`
1313
 
explain extended select decode(f1,'zxcv') as 'enc' from t1;
1314
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
1315
 
1       SIMPLE  t1      system  NULL    NULL    NULL    NULL    0       0.00    const row not found
1316
 
Warnings:
1317
 
Note    1003    select decode('','zxcv') AS `enc` from `test`.`t1`
1318
 
drop table t1;
1319
 
create table t1 (a bigint not null)engine=myisam;
 
777
create TEMPORARY table t1 (a bigint not null)engine=myisam;
1320
778
insert into t1 set a = 1024*1024*1024*4;
1321
 
delete from t1 order by (inet_ntoa(a)) desc limit 10;
1322
779
drop table t1;
1323
 
create table t1 (a char(36) not null)engine=myisam;
 
780
create TEMPORARY table t1 (a char(36) not null)engine=myisam;
1324
781
insert ignore into t1 set a = ' ';
1325
782
insert ignore into t1 set a = ' ';
1326
783
select * from t1 order by (oct(a));
1327
784
a
1328
 
 
1329
 
 
 
785
 
 
786
 
1330
787
drop table t1;
1331
788
End of 4.1 tests
1332
789
create table t1 (d decimal default null);
1353
810
20.06
1354
811
select conv("18383815659218730760",10,10) + 0;
1355
812
conv("18383815659218730760",10,10) + 0
1356
 
1.838381565921873e19
 
813
1.83838156592187e19
1357
814
select "18383815659218730760" + 0;
1358
815
"18383815659218730760" + 0
1359
 
1.838381565921873e19
 
816
1.83838156592187e19
1360
817
CREATE TABLE t1 (code varchar(10));
1361
818
INSERT INTO t1 VALUES ('a12'), ('A12'), ('a13');
1362
819
SELECT ASCII(code), code FROM t1 WHERE code='A12';
1387
844
SELECT * FROM t1 INNER JOIN t2 ON code=id 
1388
845
WHERE id='a12' AND (LENGTH(code)=5 OR code < 'a00');
1389
846
id      select_type     table   type    possible_keys   key     key_len ref     rows    filtered        Extra
1390
 
1       SIMPLE  t2      const   PRIMARY PRIMARY 12      const   1       100.00  Using index
1391
 
1       SIMPLE  t1      ref     code    code    13      const   3       100.00  Using where; Using index
 
847
1       SIMPLE  t2      const   PRIMARY PRIMARY 42      const   1       100.00  Using index
 
848
1       SIMPLE  t1      ref     code    code    43      const   2       100.00  Using where; Using index
1392
849
Warnings:
1393
 
Note    1003    select `test`.`t1`.`code` AS `code`,'a12' AS `id` from `test`.`t1` join `test`.`t2` where ((`test`.`t1`.`code` = 'a12') and (length(`test`.`t1`.`code`) = 5))
 
850
Note    1003    select `test`.`t1`.`code` AS `code`,'a12' AS `id` from `test`.`t1` join `test`.`t2` where ((`test`.`t1`.`code` = 'a12') and <cache>(('a12' = 'a12')) and ((length(`test`.`t1`.`code`) = 5) or <cache>(('a12' < 'a00'))))
1394
851
DROP TABLE t1,t2;
1395
 
select encode(NULL, NULL);
1396
 
encode(NULL, NULL)
1397
 
NULL
1398
 
select encode("data", NULL);
1399
 
encode("data", NULL)
1400
 
NULL
1401
 
select encode(NULL, "password");
1402
 
encode(NULL, "password")
1403
 
NULL
1404
 
select decode(NULL, NULL);
1405
 
decode(NULL, NULL)
1406
 
NULL
1407
 
select decode("data", NULL);
1408
 
decode("data", NULL)
1409
 
NULL
1410
 
select decode(NULL, "password");
1411
 
decode(NULL, "password")
1412
 
NULL
1413
 
select format(NULL, NULL);
1414
 
format(NULL, NULL)
1415
 
NULL
1416
 
select format(pi(), NULL);
1417
 
format(pi(), NULL)
1418
 
NULL
1419
 
select format(NULL, 2);
1420
 
format(NULL, 2)
1421
 
NULL
1422
 
select benchmark(NULL, NULL);
1423
 
benchmark(NULL, NULL)
1424
 
NULL
1425
 
select benchmark(0, NULL);
1426
 
benchmark(0, NULL)
1427
 
0
1428
 
select benchmark(100, NULL);
1429
 
benchmark(100, NULL)
1430
 
0
1431
 
select benchmark(NULL, 1+1);
1432
 
benchmark(NULL, 1+1)
1433
 
NULL
1434
852
select benchmark(-1, 1);
1435
853
benchmark(-1, 1)
1436
854
NULL
1437
855
Warnings:
1438
856
Error   1411    Incorrect count value: '-1' for function benchmark
1439
 
set @password="password";
1440
 
set @my_data="clear text to encode";
1441
 
select md5(encode(@my_data, "password"));
1442
 
md5(encode(@my_data, "password"))
1443
 
44320fd2b4a0ec92faa2da2122def917
1444
 
select md5(encode(@my_data, _utf8 "password"));
1445
 
md5(encode(@my_data, _utf8 "password"))
1446
 
44320fd2b4a0ec92faa2da2122def917
1447
 
select md5(encode(@my_data, binary "password"));
1448
 
md5(encode(@my_data, binary "password"))
1449
 
44320fd2b4a0ec92faa2da2122def917
1450
 
select md5(encode(@my_data, _latin1 "password"));
1451
 
md5(encode(@my_data, _latin1 "password"))
1452
 
44320fd2b4a0ec92faa2da2122def917
1453
 
select md5(encode(@my_data, _koi8r "password"));
1454
 
md5(encode(@my_data, _koi8r "password"))
1455
 
44320fd2b4a0ec92faa2da2122def917
1456
 
select md5(encode(@my_data, (select "password" from dual)));
1457
 
md5(encode(@my_data, (select "password" from dual)))
1458
 
44320fd2b4a0ec92faa2da2122def917
1459
 
select md5(encode(@my_data, concat("pass", "word")));
1460
 
md5(encode(@my_data, concat("pass", "word")))
1461
 
44320fd2b4a0ec92faa2da2122def917
1462
 
select md5(encode(@my_data, @password));
1463
 
md5(encode(@my_data, @password))
1464
 
44320fd2b4a0ec92faa2da2122def917
1465
 
set @my_data="binary encoded data";
1466
 
select md5(decode(@my_data, "password"));
1467
 
md5(decode(@my_data, "password"))
1468
 
5bea8c394368dbc03b76684483b7756b
1469
 
select md5(decode(@my_data, _utf8 "password"));
1470
 
md5(decode(@my_data, _utf8 "password"))
1471
 
5bea8c394368dbc03b76684483b7756b
1472
 
select md5(decode(@my_data, binary "password"));
1473
 
md5(decode(@my_data, binary "password"))
1474
 
5bea8c394368dbc03b76684483b7756b
1475
 
select md5(decode(@my_data, _latin1 "password"));
1476
 
md5(decode(@my_data, _latin1 "password"))
1477
 
5bea8c394368dbc03b76684483b7756b
1478
 
select md5(decode(@my_data, _koi8r "password"));
1479
 
md5(decode(@my_data, _koi8r "password"))
1480
 
5bea8c394368dbc03b76684483b7756b
1481
 
select md5(decode(@my_data, (select "password" from dual)));
1482
 
md5(decode(@my_data, (select "password" from dual)))
1483
 
5bea8c394368dbc03b76684483b7756b
1484
 
select md5(decode(@my_data, concat("pass", "word")));
1485
 
md5(decode(@my_data, concat("pass", "word")))
1486
 
5bea8c394368dbc03b76684483b7756b
1487
 
select md5(decode(@my_data, @password));
1488
 
md5(decode(@my_data, @password))
1489
 
5bea8c394368dbc03b76684483b7756b
1490
857
set @dec=5;
1491
858
select format(pi(), (1+1));
1492
859
format(pi(), (1+1))
1493
860
3.14
1494
 
select format(pi(), (select 3 from dual));
1495
 
format(pi(), (select 3 from dual))
 
861
select format(pi(), (select 3));
 
862
format(pi(), (select 3))
1496
863
3.142
1497
864
select format(pi(), @dec);
1498
865
format(pi(), @dec)
1504
871
select benchmark(5+5, pi());
1505
872
benchmark(5+5, pi())
1506
873
0
1507
 
select benchmark((select 10 from dual), pi());
1508
 
benchmark((select 10 from dual), pi())
 
874
select benchmark((select 10), pi());
 
875
benchmark((select 10), pi())
1509
876
0
1510
877
select benchmark(@bench_count, pi());
1511
878
benchmark(@bench_count, pi())
2265
1632
Error   1292    Truncated incorrect DECIMAL value: ''
2266
1633
Error   1292    Truncated incorrect DECIMAL value: ''
2267
1634
Warning 1301    Result of lpad() was larger than max_allowed_packet (1048576) - truncated
2268
 
SET @orig_sql_mode = @@SQL_MODE;
2269
 
SET SQL_MODE=traditional;
2270
 
SELECT CHAR(0xff,0x8f USING utf8);
2271
 
CHAR(0xff,0x8f USING utf8)
2272
 
NULL
2273
 
Warnings:
2274
 
Error   1300    Invalid utf8 character string: 'FF8F'
2275
 
SELECT CHAR(0xff,0x8f USING utf8) IS NULL;
2276
 
CHAR(0xff,0x8f USING utf8) IS NULL
2277
 
1
2278
 
Warnings:
2279
 
Error   1300    Invalid utf8 character string: 'FF8F'
2280
 
SET SQL_MODE=@orig_sql_mode;
2281
 
select substring('abc', cast(2 as unsigned int));
2282
 
substring('abc', cast(2 as unsigned int))
2283
 
bc
2284
 
select repeat('a', cast(2 as unsigned int));
2285
 
repeat('a', cast(2 as unsigned int))
2286
 
aa
2287
 
select rpad('abc', cast(5 as unsigned integer), 'x');
2288
 
rpad('abc', cast(5 as unsigned integer), 'x')
2289
 
abcxx
2290
 
select lpad('abc', cast(5 as unsigned integer), 'x');
2291
 
lpad('abc', cast(5 as unsigned integer), 'x')
2292
 
xxabc
 
1635
SELECT CHAR(0xff,0x8f);
 
1636
CHAR(0xff,0x8f)
 
1637
��
 
1638
SELECT CHAR(0xff,0x8f) IS NULL;
 
1639
CHAR(0xff,0x8f) IS NULL
 
1640
0
2293
1641
create table t1(f1 longtext);
2294
1642
insert into t1 values ("123"),("456");
2295
1643
select substring(f1,1,1) from t1 group by 1;
2304
1652
DROP TABLE IF EXISTS t1;
2305
1653
CREATE TABLE `t1` (
2306
1654
`id` varchar(20) NOT NULL,
2307
 
`tire` tinyint(3) unsigned NOT NULL,
 
1655
`tire` int NOT NULL,
2308
1656
PRIMARY KEY (`id`)
2309
1657
);
2310
1658
INSERT INTO `t1` (`id`, `tire`) VALUES ('A', 0), ('B', 1),('C', 2);
2314
1662
                0
2315
1663
#       #       1
2316
1664
##      ##      2
2317
 
SELECT REPEAT('0', CAST(0 AS UNSIGNED));
2318
 
REPEAT('0', CAST(0 AS UNSIGNED))
 
1665
SELECT REPEAT('0', 0);
 
1666
REPEAT('0', 0)
2319
1667
 
2320
1668
SELECT REPEAT('0', -2);
2321
1669
REPEAT('0', -2)
2342
1690
SELECT INSERT('abc', 6, 3, '1234');
2343
1691
INSERT('abc', 6, 3, '1234')
2344
1692
abc
2345
 
CREATE TABLE t1 (a INT);
2346
 
CREATE VIEW v1 AS SELECT CRC32(a) AS C FROM t1;
2347
 
INSERT INTO t1 VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
2348
 
SELECT CRC32(a), COUNT(*) FROM t1 GROUP BY 1;
2349
 
CRC32(a)        COUNT(*)
2350
 
450215437       1
2351
 
498629140       1
2352
 
1790921346      1
2353
 
1842515611      1
2354
 
2212294583      1
2355
 
2226203566      1
2356
 
2366072709      1
2357
 
2707236321      1
2358
 
4088798008      1
2359
 
4194326291      1
2360
 
SELECT CRC32(a), COUNT(*) FROM t1 GROUP BY 1 ORDER BY 1;
2361
 
CRC32(a)        COUNT(*)
2362
 
450215437       1
2363
 
498629140       1
2364
 
1790921346      1
2365
 
1842515611      1
2366
 
2212294583      1
2367
 
2226203566      1
2368
 
2366072709      1
2369
 
2707236321      1
2370
 
4088798008      1
2371
 
4194326291      1
2372
 
SELECT * FROM (SELECT CRC32(a) FROM t1) t2;
2373
 
CRC32(a)
2374
 
2212294583
2375
 
450215437
2376
 
1842515611
2377
 
4088798008
2378
 
2226203566
2379
 
498629140
2380
 
1790921346
2381
 
4194326291
2382
 
2366072709
2383
 
2707236321
2384
 
CREATE TABLE t2 SELECT CRC32(a) FROM t1;
2385
 
desc t2;
2386
 
Field   Type    Null    Key     Default Extra
2387
 
CRC32(a)        int(10) unsigned        YES             NULL    
2388
 
SELECT * FROM v1;
2389
 
C
2390
 
2212294583
2391
 
450215437
2392
 
1842515611
2393
 
4088798008
2394
 
2226203566
2395
 
498629140
2396
 
1790921346
2397
 
4194326291
2398
 
2366072709
2399
 
2707236321
2400
 
SELECT * FROM (SELECT * FROM v1) x;
2401
 
C
2402
 
2212294583
2403
 
450215437
2404
 
1842515611
2405
 
4088798008
2406
 
2226203566
2407
 
498629140
2408
 
1790921346
2409
 
4194326291
2410
 
2366072709
2411
 
2707236321
2412
 
DROP TABLE t1, t2;
2413
 
DROP VIEW v1;
2414
 
SELECT LOCATE('foo', NULL) FROM DUAL;
 
1693
SELECT LOCATE('foo', NULL);
2415
1694
LOCATE('foo', NULL)
2416
1695
NULL
2417
 
SELECT LOCATE(NULL, 'o') FROM DUAL;
 
1696
SELECT LOCATE(NULL, 'o');
2418
1697
LOCATE(NULL, 'o')
2419
1698
NULL
2420
 
SELECT LOCATE(NULL, NULL) FROM DUAL;
 
1699
SELECT LOCATE(NULL, NULL);
2421
1700
LOCATE(NULL, NULL)
2422
1701
NULL
2423
 
SELECT LOCATE('foo', NULL) IS NULL FROM DUAL;
 
1702
SELECT LOCATE('foo', NULL) IS NULL;
2424
1703
LOCATE('foo', NULL) IS NULL
2425
1704
1
2426
 
SELECT LOCATE(NULL, 'o') IS NULL FROM DUAL;
 
1705
SELECT LOCATE(NULL, 'o') IS NULL;
2427
1706
LOCATE(NULL, 'o') IS NULL
2428
1707
1
2429
 
SELECT LOCATE(NULL, NULL) IS NULL FROM DUAL;
 
1708
SELECT LOCATE(NULL, NULL) IS NULL;
2430
1709
LOCATE(NULL, NULL) IS NULL
2431
1710
1
2432
 
SELECT ISNULL(LOCATE('foo', NULL)) FROM DUAL;
 
1711
SELECT ISNULL(LOCATE('foo', NULL));
2433
1712
ISNULL(LOCATE('foo', NULL))
2434
1713
1
2435
 
SELECT ISNULL(LOCATE(NULL, 'o')) FROM DUAL;
 
1714
SELECT ISNULL(LOCATE(NULL, 'o'));
2436
1715
ISNULL(LOCATE(NULL, 'o'))
2437
1716
1
2438
 
SELECT ISNULL(LOCATE(NULL, NULL)) FROM DUAL;
 
1717
SELECT ISNULL(LOCATE(NULL, NULL));
2439
1718
ISNULL(LOCATE(NULL, NULL))
2440
1719
1
2441
 
SELECT LOCATE('foo', NULL) <=> NULL FROM DUAL;
 
1720
SELECT LOCATE('foo', NULL) <=> NULL;
2442
1721
LOCATE('foo', NULL) <=> NULL
2443
1722
1
2444
 
SELECT LOCATE(NULL, 'o') <=> NULL FROM DUAL;
 
1723
SELECT LOCATE(NULL, 'o') <=> NULL;
2445
1724
LOCATE(NULL, 'o') <=> NULL
2446
1725
1
2447
 
SELECT LOCATE(NULL, NULL) <=> NULL FROM DUAL;
 
1726
SELECT LOCATE(NULL, NULL) <=> NULL;
2448
1727
LOCATE(NULL, NULL) <=> NULL
2449
1728
1
2450
1729
CREATE TABLE t1 (id int NOT NULL PRIMARY KEY, a varchar(10), p varchar(10));
2459
1738
3       NULL
2460
1739
4       NULL
2461
1740
SELECT id, LOCATE(a,p) IS NULL FROM t1;
2462
 
id      LOCATE(a,p) IS NULL
 
1741
id      LOCATE(a,p) IS NULL 
2463
1742
1       0
2464
1743
2       1
2465
1744
3       1
2471
1750
3       1
2472
1751
4       1
2473
1752
SELECT id, LOCATE(a,p) <=> NULL FROM t1;
2474
 
id      LOCATE(a,p) <=> NULL
 
1753
id      LOCATE(a,p) <=> NULL 
2475
1754
1       0
2476
1755
2       1
2477
1756
3       1
2487
1766
3
2488
1767
4
2489
1768
DROP TABLE t1;
2490
 
SELECT SUBSTR('foo',1,0) FROM DUAL;
2491
 
SUBSTR('foo',1,0)
2492
 
 
2493
 
SELECT SUBSTR('foo',1,CAST(0 AS SIGNED)) FROM DUAL;
2494
 
SUBSTR('foo',1,CAST(0 AS SIGNED))
2495
 
 
2496
 
SELECT SUBSTR('foo',1,CAST(0 AS UNSIGNED)) FROM DUAL;
2497
 
SUBSTR('foo',1,CAST(0 AS UNSIGNED))
2498
 
 
2499
 
CREATE TABLE t1 (a varchar(10), len int unsigned);
 
1769
SELECT SUBSTR('foo',1,0);
 
1770
SUBSTR('foo',1,0)
 
1771
 
 
1772
SELECT SUBSTR('foo',1,0);
 
1773
SUBSTR('foo',1,0)
 
1774
 
 
1775
SELECT SUBSTR('foo',1,0);
 
1776
SUBSTR('foo',1,0)
 
1777
 
 
1778
CREATE TABLE t1 (a varchar(10), len int);
2500
1779
INSERT INTO t1 VALUES ('bar', 2), ('foo', 0);
2501
1780
SELECT SUBSTR(a,1,len) FROM t1;
2502
1781
SUBSTR(a,1,len)
2508
1787
HEX(c1)
2509
1788
414243
2510
1789
DROP TABLE t1;
2511
 
CREATE VIEW v1 AS SELECT CHAR(0x414243) as c1;
2512
 
SELECT HEX(c1) from v1;
2513
 
HEX(c1)
2514
 
414243
2515
 
DROP VIEW v1;
2516
1790
End of 5.0 tests