Skip to content

Commit c1c545d

Browse files
author
Tor Didriksen
committed
Bug#25474239 MISC MTR TESTS FAIL WHEN CHANGING DEFAULT CHARACTER SET FOR DATABASE
Patch #10 To repeat: ./mtr --charset-for-testdb=utf8mb4 --defaults-file=include/utf8mb4_my.cnf ctype_collate explain_json_all explain_json_none func_bitwise_ops func_compress func_like innodb_pk_extension_off innodb_pk_extension_on insert_select select_found select_safe subquery_mat subquery_mat_all subquery_mat_none Change-Id: Ic4d6491daea4e87157ea9373394462174b70b566
1 parent 6d5ebe8 commit c1c545d

31 files changed

+217
-490
lines changed

mysql-test/include/explain_json.inc

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ DROP TABLE t1, t2, t3, t4;
162162
CREATE TABLE t1 (
163163
i1 INTEGER NOT NULL,
164164
c1 VARCHAR(1) NOT NULL
165-
) ENGINE=InnoDB;
165+
) charset latin1 ENGINE=InnoDB;
166166

167167
INSERT INTO t1 VALUES (2,'w');
168168

@@ -171,14 +171,14 @@ CREATE TABLE t2 (
171171
c1 VARCHAR(1) NOT NULL,
172172
c2 VARCHAR(1) NOT NULL,
173173
KEY (c1, i1)
174-
) ENGINE=InnoDB;
174+
) charset latin1 ENGINE=InnoDB;
175175

176176
INSERT INTO t2 VALUES (8,'d','d');
177177
INSERT INTO t2 VALUES (4,'v','v');
178178

179179
CREATE TABLE t3 (
180180
c1 VARCHAR(1) NOT NULL
181-
) ENGINE=InnoDB;
181+
) charset latin1 ENGINE=InnoDB;
182182

183183
INSERT INTO t3 VALUES ('v');
184184

@@ -311,9 +311,9 @@ DROP TABLE t1;
311311

312312
--echo #
313313

314-
CREATE TABLE t1 (a INT NOT NULL, b CHAR(3) NOT NULL, PRIMARY KEY (a));
314+
CREATE TABLE t1 (a INT NOT NULL, b CHAR(3) NOT NULL, PRIMARY KEY (a)) charset utf8mb4;
315315
INSERT INTO t1 VALUES (1,'ABC'), (2,'EFG'), (3,'HIJ');
316-
CREATE TABLE t2 (a INT NOT NULL,b CHAR(3) NOT NULL,PRIMARY KEY (a, b));
316+
CREATE TABLE t2 (a INT NOT NULL,b CHAR(3) NOT NULL,PRIMARY KEY (a, b)) charset utf8mb4;
317317
INSERT INTO t2 VALUES (1,'a'),(1,'b'),(3,'F');
318318

319319
EXPLAIN FORMAT=JSON SELECT t1.a, GROUP_CONCAT(t2.b) AS b FROM t1 LEFT JOIN t2 ON t1.a=t2.a GROUP BY t1.a ORDER BY t1.b;

mysql-test/include/innodb_pk_extension.inc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ CREATE TABLE t1
200200
f7 VARCHAR(500),
201201
PRIMARY KEY (f1, f2, f3, f4),
202202
KEY k1 (f5, f6, f7)
203-
) ENGINE = InnoDB;
203+
) charset latin1 ENGINE = InnoDB;
204204

205205
--replace_column 10 #
206206
EXPLAIN SELECT f5 FROM t1 FORCE INDEX (k1) WHERE

mysql-test/include/subquery_mat.inc

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ drop table if exists t1, t2, t3, t1i, t2i, t3i;
1212
drop view if exists v1, v2, v1m, v2m;
1313
--enable_warnings
1414

15-
create table t1 (a1 char(8), a2 char(8));
16-
create table t2 (b1 char(8), b2 char(8));
17-
create table t3 (c1 char(8), c2 char(8));
15+
create table t1 (a1 char(8), a2 char(8)) charset utf8mb4;
16+
create table t2 (b1 char(8), b2 char(8)) charset utf8mb4;
17+
create table t3 (c1 char(8), c2 char(8)) charset utf8mb4;
1818

1919
insert into t1 values ('1 - 00', '2 - 00');
2020
insert into t1 values ('1 - 01', '2 - 01');
@@ -32,9 +32,9 @@ insert into t3 values ('1 - 03', '2 - 03');
3232
insert into t3 values ('1 - 04', '2 - 04');
3333

3434
# Indexed columns
35-
create table t1i (a1 char(8), a2 char(8));
36-
create table t2i (b1 char(8), b2 char(8));
37-
create table t3i (c1 char(8), c2 char(8));
35+
create table t1i (a1 char(8), a2 char(8)) charset utf8mb4;
36+
create table t2i (b1 char(8), b2 char(8)) charset utf8mb4;
37+
create table t3i (c1 char(8), c2 char(8)) charset utf8mb4;
3838
create index it1i1 on t1i (a1);
3939
create index it1i2 on t1i (a2);
4040
create index it1i3 on t1i (a1, a2);
@@ -480,7 +480,7 @@ drop table t1;
480480
# Test for Bug#16603 GROUP BY in a row subquery with a quantifier
481481
# when an index is defined on the grouping field
482482

483-
CREATE TABLE t1 (a varchar(5), b varchar(10));
483+
CREATE TABLE t1 (a varchar(5), b varchar(10)) charset utf8mb4;
484484
INSERT INTO t1 VALUES
485485
('AAA', 5), ('BBB', 4), ('BBB', 1), ('CCC', 2),
486486
('CCC', 7), ('AAA', 2), ('AAA', 4), ('BBB', 3), ('AAA', 8);
@@ -555,7 +555,7 @@ CREATE TABLE t1 (
555555
pk INT,
556556
v VARCHAR(1) DEFAULT NULL,
557557
PRIMARY KEY(pk)
558-
);
558+
) charset latin1;
559559
CREATE TABLE t2 LIKE t1;
560560
CREATE TABLE t3 LIKE t1;
561561
CREATE TABLE empty1 (a int);
@@ -1446,7 +1446,7 @@ CREATE TABLE t1 (
14461446
col_varchar_nokey VARCHAR(1),
14471447
KEY col_int_key (col_int_key),
14481448
KEY col_varchar_key (col_varchar_key,col_int_key)
1449-
);
1449+
) charset utf8mb4;
14501450

14511451
INSERT INTO t1 VALUES (8,'x','x');
14521452
INSERT INTO t1 VALUES (NULL,'x','x');
@@ -1457,7 +1457,7 @@ CREATE TABLE t2 (
14571457
col_varchar_nokey VARCHAR(1),
14581458
KEY col_int_key (col_int_key),
14591459
KEY col_varchar_key (col_varchar_key,col_int_key)
1460-
);
1460+
) charset utf8mb4;
14611461

14621462
INSERT INTO t2 VALUES (0,'x','x');
14631463

@@ -1467,7 +1467,7 @@ CREATE TABLE t3 (
14671467
col_varchar_nokey VARCHAR(1),
14681468
KEY col_int_key (col_int_key),
14691469
KEY col_varchar_key (col_varchar_key,col_int_key)
1470-
);
1470+
) charset utf8mb4;
14711471

14721472
INSERT INTO t3 VALUES (8,'g','g');
14731473

mysql-test/r/ctype_collate.result

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
DROP TABLE IF EXISTS t1;
22
DROP TABLE IF EXISTS t2;
33
CREATE TABLE t1 (
4-
latin1_f CHAR(32) CHARACTER SET latin1 NOT NULL
5-
);
4+
latin1_f CHAR(32) NOT NULL
5+
) charset latin1;
66
CREATE TABLE t2 (
77
latin1_f CHAR(32) CHARACTER SET latin1 COLLATE koi8r_general_ci NOT NULL
88
);
@@ -512,8 +512,8 @@ SET CHARACTER SET 'latin1';
512512
SHOW VARIABLES LIKE 'character_set_client';
513513
Variable_name Value
514514
character_set_client latin1
515-
SELECT charset('a'),collation('a'),coercibility('a'),'a'='A';
516-
charset('a') collation('a') coercibility('a') 'a'='A'
515+
SELECT charset(_latin1 'a'),collation(_latin1 'a'),coercibility('a'),'a'='A';
516+
charset(_latin1 'a') collation(_latin1 'a') coercibility('a') 'a'='A'
517517
latin1 latin1_swedish_ci 4 1
518518
explain extended SELECT charset('a'),collation('a'),coercibility('a'),'a'='A';
519519
id select_type table partitions type possible_keys key key_len ref rows filtered Extra
@@ -524,8 +524,8 @@ Note 1003 /* select#1 */ select charset('a') AS `charset('a')`,collation('a') AS
524524
SET CHARACTER SET koi8r;
525525
SHOW VARIABLES LIKE 'collation_client';
526526
Variable_name Value
527-
SELECT charset('a'),collation('a'),coercibility('a'),'a'='A';
528-
charset('a') collation('a') coercibility('a') 'a'='A'
527+
SELECT charset(_latin1 'a'),collation(_latin1 'a'),coercibility('a'),'a'='A';
528+
charset(_latin1 'a') collation(_latin1 'a') coercibility('a') 'a'='A'
529529
latin1 latin1_swedish_ci 4 1
530530
SET CHARACTER SET 'DEFAULT';
531531
ERROR 42000: Unknown character set: 'DEFAULT'
@@ -551,27 +551,27 @@ a A A
551551
DROP TABLE t1;
552552
create table t1 (a varchar(1) character set latin1 collate latin1_general_ci);
553553
insert into t1 values ('A'),('a'),('B'),('b'),('C'),('c');
554-
select * from t1 where a > 'B' collate latin1_bin;
554+
select * from t1 where a > _latin1 'B' collate latin1_bin;
555555
a
556556
a
557557
b
558558
C
559559
c
560-
select * from t1 where a <> 'B' collate latin1_bin;
560+
select * from t1 where a <> _latin1 'B' collate latin1_bin;
561561
a
562562
A
563563
a
564564
b
565565
C
566566
c
567567
create index i on t1 (a);
568-
select * from t1 where a > 'B' collate latin1_bin;
568+
select * from t1 where a > _latin1 'B' collate latin1_bin;
569569
a
570570
a
571571
b
572572
C
573573
c
574-
select * from t1 where a <> 'B' collate latin1_bin;
574+
select * from t1 where a <> _latin1 'B' collate latin1_bin;
575575
a
576576
A
577577
a
@@ -676,7 +676,7 @@ Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be r
676676
select least(_latin1'a',_latin2'b',_latin5'c' collate latin5_turkish_ci);
677677
least(_latin1'a',_latin2'b',_latin5'c' collate latin5_turkish_ci)
678678
a
679-
create table t1
679+
create table t1 charset latin1
680680
select least(_latin1'a',_latin2'b',_latin5'c' collate latin5_turkish_ci) as f1;
681681
show create table t1;
682682
Table Create Table

mysql-test/r/explain_json_all.result

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1281,19 +1281,19 @@ DROP TABLE t1, t2, t3, t4;
12811281
CREATE TABLE t1 (
12821282
i1 INTEGER NOT NULL,
12831283
c1 VARCHAR(1) NOT NULL
1284-
) ENGINE=InnoDB;
1284+
) charset latin1 ENGINE=InnoDB;
12851285
INSERT INTO t1 VALUES (2,'w');
12861286
CREATE TABLE t2 (
12871287
i1 INTEGER NOT NULL,
12881288
c1 VARCHAR(1) NOT NULL,
12891289
c2 VARCHAR(1) NOT NULL,
12901290
KEY (c1, i1)
1291-
) ENGINE=InnoDB;
1291+
) charset latin1 ENGINE=InnoDB;
12921292
INSERT INTO t2 VALUES (8,'d','d');
12931293
INSERT INTO t2 VALUES (4,'v','v');
12941294
CREATE TABLE t3 (
12951295
c1 VARCHAR(1) NOT NULL
1296-
) ENGINE=InnoDB;
1296+
) charset latin1 ENGINE=InnoDB;
12971297
INSERT INTO t3 VALUES ('v');
12981298
EXPLAIN FORMAT=json
12991299
SELECT i1
@@ -2407,9 +2407,9 @@ Warnings:
24072407
Note 1003 /* select#1 */ select `test`.`t1`.`a` AS `a`,min(`test`.`t1`.`b`) AS `b` from `test`.`t1` group by `test`.`t1`.`a` order by `b`
24082408
DROP TABLE t1;
24092409
#
2410-
CREATE TABLE t1 (a INT NOT NULL, b CHAR(3) NOT NULL, PRIMARY KEY (a));
2410+
CREATE TABLE t1 (a INT NOT NULL, b CHAR(3) NOT NULL, PRIMARY KEY (a)) charset utf8mb4;
24112411
INSERT INTO t1 VALUES (1,'ABC'), (2,'EFG'), (3,'HIJ');
2412-
CREATE TABLE t2 (a INT NOT NULL,b CHAR(3) NOT NULL,PRIMARY KEY (a, b));
2412+
CREATE TABLE t2 (a INT NOT NULL,b CHAR(3) NOT NULL,PRIMARY KEY (a, b)) charset utf8mb4;
24132413
INSERT INTO t2 VALUES (1,'a'),(1,'b'),(3,'F');
24142414
EXPLAIN FORMAT=JSON SELECT t1.a, GROUP_CONCAT(t2.b) AS b FROM t1 LEFT JOIN t2 ON t1.a=t2.a GROUP BY t1.a ORDER BY t1.b;
24152415
EXPLAIN
@@ -2439,7 +2439,7 @@ EXPLAIN
24392439
"read_cost": "0.50",
24402440
"eval_cost": "0.30",
24412441
"prefix_cost": "0.80",
2442-
"data_read_per_join": "48"
2442+
"data_read_per_join": "72"
24432443
} /* cost_info */,
24442444
"used_columns": [
24452445
"a",
@@ -2470,7 +2470,7 @@ EXPLAIN
24702470
"read_cost": "0.75",
24712471
"eval_cost": "0.30",
24722472
"prefix_cost": "1.85",
2473-
"data_read_per_join": "48"
2473+
"data_read_per_join": "72"
24742474
} /* cost_info */,
24752475
"used_columns": [
24762476
"a",

mysql-test/r/explain_json_none.result

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1278,19 +1278,19 @@ DROP TABLE t1, t2, t3, t4;
12781278
CREATE TABLE t1 (
12791279
i1 INTEGER NOT NULL,
12801280
c1 VARCHAR(1) NOT NULL
1281-
) ENGINE=InnoDB;
1281+
) charset latin1 ENGINE=InnoDB;
12821282
INSERT INTO t1 VALUES (2,'w');
12831283
CREATE TABLE t2 (
12841284
i1 INTEGER NOT NULL,
12851285
c1 VARCHAR(1) NOT NULL,
12861286
c2 VARCHAR(1) NOT NULL,
12871287
KEY (c1, i1)
1288-
) ENGINE=InnoDB;
1288+
) charset latin1 ENGINE=InnoDB;
12891289
INSERT INTO t2 VALUES (8,'d','d');
12901290
INSERT INTO t2 VALUES (4,'v','v');
12911291
CREATE TABLE t3 (
12921292
c1 VARCHAR(1) NOT NULL
1293-
) ENGINE=InnoDB;
1293+
) charset latin1 ENGINE=InnoDB;
12941294
INSERT INTO t3 VALUES ('v');
12951295
EXPLAIN FORMAT=json
12961296
SELECT i1
@@ -2422,9 +2422,9 @@ Warnings:
24222422
Note 1003 /* select#1 */ select `test`.`t1`.`a` AS `a`,min(`test`.`t1`.`b`) AS `b` from `test`.`t1` group by `test`.`t1`.`a` order by `b`
24232423
DROP TABLE t1;
24242424
#
2425-
CREATE TABLE t1 (a INT NOT NULL, b CHAR(3) NOT NULL, PRIMARY KEY (a));
2425+
CREATE TABLE t1 (a INT NOT NULL, b CHAR(3) NOT NULL, PRIMARY KEY (a)) charset utf8mb4;
24262426
INSERT INTO t1 VALUES (1,'ABC'), (2,'EFG'), (3,'HIJ');
2427-
CREATE TABLE t2 (a INT NOT NULL,b CHAR(3) NOT NULL,PRIMARY KEY (a, b));
2427+
CREATE TABLE t2 (a INT NOT NULL,b CHAR(3) NOT NULL,PRIMARY KEY (a, b)) charset utf8mb4;
24282428
INSERT INTO t2 VALUES (1,'a'),(1,'b'),(3,'F');
24292429
EXPLAIN FORMAT=JSON SELECT t1.a, GROUP_CONCAT(t2.b) AS b FROM t1 LEFT JOIN t2 ON t1.a=t2.a GROUP BY t1.a ORDER BY t1.b;
24302430
EXPLAIN
@@ -2454,7 +2454,7 @@ EXPLAIN
24542454
"read_cost": "0.50",
24552455
"eval_cost": "0.30",
24562456
"prefix_cost": "0.80",
2457-
"data_read_per_join": "48"
2457+
"data_read_per_join": "72"
24582458
} /* cost_info */,
24592459
"used_columns": [
24602460
"a",
@@ -2485,7 +2485,7 @@ EXPLAIN
24852485
"read_cost": "0.75",
24862486
"eval_cost": "0.30",
24872487
"prefix_cost": "1.85",
2488-
"data_read_per_join": "48"
2488+
"data_read_per_join": "72"
24892489
} /* cost_info */,
24902490
"used_columns": [
24912491
"a",

mysql-test/r/func_bitwise_ops.result

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,15 +74,16 @@ ERROR HY000: Binary operands of bitwise operators must be of equal length
7474
# show output type
7575
#
7676
CREATE TABLE t0(vbin VARBINARY(6), bin BINARY(6));
77-
CREATE TABLE t1 AS SELECT vbin & vbin, vbin & bin, bin & vbin, bin & bin FROM t0;
77+
CREATE TABLE t1 charset utf8mb4
78+
AS SELECT vbin & vbin, vbin & bin, bin & vbin, bin & bin FROM t0;
7879
SHOW CREATE TABLE t1;
7980
Table Create Table
8081
t1 CREATE TABLE `t1` (
8182
`vbin & vbin` varbinary(6) DEFAULT NULL,
8283
`vbin & bin` varbinary(6) DEFAULT NULL,
8384
`bin & vbin` varbinary(6) DEFAULT NULL,
8485
`bin & bin` varbinary(6) DEFAULT NULL
85-
) ENGINE=InnoDB DEFAULT CHARSET=latin1
86+
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
8687
DROP TABLE t0;
8788
DROP TABLE t1;
8889
#

mysql-test/r/func_compress.result

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ uncompressed_length(compress(@test_compress_string))
2828
select length(compress(@test_compress_string))<length(@test_compress_string);
2929
length(compress(@test_compress_string))<length(@test_compress_string)
3030
1
31-
create table t1 (a text, b char(255), c char(4)) engine=myisam;
31+
create table t1 (a blob, b binary(255), c char(4)) engine=myisam;
3232
insert into t1 (a,b,c) values (compress(@test_compress_string),compress(@test_compress_string),'d ');
3333
select uncompress(a) from t1;
3434
uncompress(a)
@@ -52,7 +52,7 @@ uncompress(compress(""))
5252
select uncompressed_length("");
5353
uncompressed_length("")
5454
0
55-
create table t1 (a text);
55+
create table t1 (a blob);
5656
insert t1 values (compress(null)), ('A\0\0\0BBBBBBBB'), (compress(space(50000))), (space(50000));
5757
select length(a) from t1;
5858
length(a)

mysql-test/r/func_like.result

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
11
drop table if exists t1;
2-
create table t1 (a varchar(10), key(a));
2+
create table t1 (a varchar(10), key(a)) charset utf8mb4;
33
insert into t1 values ("a"),("abc"),("abcd"),("hello"),("test");
44
analyze table t1;
55
Table Op Msg_type Msg_text
66
test.t1 analyze status OK
77
explain extended select * from t1 where a like 'abc%';
88
id select_type table partitions type possible_keys key key_len ref rows filtered Extra
9-
1 SIMPLE t1 NULL range a a 13 NULL 2 100.00 Using where; Using index
9+
1 SIMPLE t1 NULL range a a 43 NULL 2 100.00 Using where; Using index
1010
Warnings:
1111
Warning 1681 'EXTENDED' is deprecated and will be removed in a future release.
1212
Note 1003 /* select#1 */ select `test`.`t1`.`a` AS `a` from `test`.`t1` where (`test`.`t1`.`a` like 'abc%')
1313
explain extended select * from t1 where a like concat('abc','%');
1414
id select_type table partitions type possible_keys key key_len ref rows filtered Extra
15-
1 SIMPLE t1 NULL range a a 13 NULL 2 100.00 Using where; Using index
15+
1 SIMPLE t1 NULL range a a 43 NULL 2 100.00 Using where; Using index
1616
Warnings:
1717
Warning 1681 'EXTENDED' is deprecated and will be removed in a future release.
18-
Note 1003 /* select#1 */ select `test`.`t1`.`a` AS `a` from `test`.`t1` where (`test`.`t1`.`a` like <cache>(concat('abc','%')))
18+
Note 1003 /* select#1 */ select `test`.`t1`.`a` AS `a` from `test`.`t1` where (`test`.`t1`.`a` like <cache>(convert(concat('abc','%') using utf8mb4)))
1919
select * from t1 where a like "abc%";
2020
a
2121
abc

mysql-test/r/innodb_pk_extension_off.result

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -364,7 +364,7 @@ f4 VARCHAR(500), f5 VARCHAR(500), f6 VARCHAR(500),
364364
f7 VARCHAR(500),
365365
PRIMARY KEY (f1, f2, f3, f4),
366366
KEY k1 (f5, f6, f7)
367-
) ENGINE = InnoDB;
367+
) charset latin1 ENGINE = InnoDB;
368368
EXPLAIN SELECT f5 FROM t1 FORCE INDEX (k1) WHERE
369369
f1 = 'a' AND f2 = 'a' AND f3 = 'a' AND f4 = 'a' AND
370370
f5 = 'a' AND f6 = 'a' AND f7 = 'a';

mysql-test/r/innodb_pk_extension_on.result

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -364,7 +364,7 @@ f4 VARCHAR(500), f5 VARCHAR(500), f6 VARCHAR(500),
364364
f7 VARCHAR(500),
365365
PRIMARY KEY (f1, f2, f3, f4),
366366
KEY k1 (f5, f6, f7)
367-
) ENGINE = InnoDB;
367+
) charset latin1 ENGINE = InnoDB;
368368
EXPLAIN SELECT f5 FROM t1 FORCE INDEX (k1) WHERE
369369
f1 = 'a' AND f2 = 'a' AND f3 = 'a' AND f4 = 'a' AND
370370
f5 = 'a' AND f6 = 'a' AND f7 = 'a';

mysql-test/r/insert_select.result

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -774,14 +774,14 @@ INSERT INTO t1 ( b ) SELECT MAX( b ) FROM t1 WHERE b = 2;
774774
ERROR 23000: Duplicate entry '0' for key 'PRIMARY'
775775
DROP TABLE t1;
776776
SET SQL_MODE=default;
777-
CREATE TABLE t1 (c VARCHAR(30), INDEX ix_c (c(10)));
777+
CREATE TABLE t1 (c VARCHAR(30), INDEX ix_c (c(10))) charset utf8mb4;
778778
CREATE TABLE t2 (d VARCHAR(10));
779779
INSERT INTO t1 (c) VALUES ('7_chars'), ('13_characters');
780780
EXPLAIN
781781
SELECT (SELECT SUM(LENGTH(c)) FROM t1 WHERE c='13_characters') FROM t1;
782782
id select_type table partitions type possible_keys key key_len ref rows filtered Extra
783783
1 PRIMARY t1 NULL ALL NULL NULL NULL NULL 2 100.00 NULL
784-
2 SUBQUERY t1 NULL ref ix_c ix_c 13 const 1 100.00 Using where
784+
2 SUBQUERY t1 NULL ref ix_c ix_c 43 const 1 100.00 Using where
785785
Warnings:
786786
Note 1003 /* select#1 */ select (/* select#2 */ select sum(length(`test`.`t1`.`c`)) from `test`.`t1` where (`test`.`t1`.`c` = '13_characters')) AS `(SELECT SUM(LENGTH(c)) FROM t1 WHERE c='13_characters')` from `test`.`t1`
787787
SELECT (SELECT SUM(LENGTH(c)) FROM t1 WHERE c='13_characters') FROM t1;

0 commit comments

Comments
 (0)