6 drop
table if exists t1,t2,t3;
10 id int(6) DEFAULT
'0' NOT NULL,
12 clee
char(20) NOT NULL,
19 INSERT INTO t1 VALUES (2,4,
'6067169d',
'Y');
20 INSERT INTO t1 VALUES (2,5,
'606716d1',
'Y');
21 INSERT INTO t1 VALUES (2,1,
'606717c1',
'Y');
22 INSERT INTO t1 VALUES (3,1,
'6067178d',
'Y');
23 INSERT INTO t1 VALUES (2,6,
'60671515',
'Y');
24 INSERT INTO t1 VALUES (2,7,
'60671569',
'Y');
25 INSERT INTO t1 VALUES (2,3,
'dd',
'Y');
28 id int(6) NOT NULL auto_increment,
29 description varchar(40) NOT NULL,
31 ordre
int(6)
unsigned DEFAULT
'0' NOT NULL,
38 # Dumping data for table 't2'
41 INSERT INTO t2 VALUES (1,
'Emettre un appel d''offres',
'en_construction.html',10,
'emettre.gif');
42 INSERT INTO t2 VALUES (2,
'Emettre des soumissions',
'en_construction.html',20,
'emettre.gif');
43 INSERT INTO t2 VALUES (7,
'Liste des t2',
't2_liste_form.phtml',51060,
'link.gif');
44 INSERT INTO t2 VALUES (8,
'Consulter les soumissions',
'consulter_soumissions.phtml',200,
'link.gif');
45 INSERT INTO t2 VALUES (9,
'Ajouter un type de materiel',
'typeMateriel_ajoute_form.phtml',51000,
'link.gif');
46 INSERT INTO t2 VALUES (10,
'Lister/modifier un type de materiel',
'typeMateriel_liste_form.phtml',51010,
'link.gif');
47 INSERT INTO t2 VALUES (3,
'Créer une fiche de client',
'clients_ajoute_form.phtml',40000,
'link.gif');
48 INSERT INTO t2 VALUES (4,
'Modifier des clients',
'en_construction.html',40010,
'link.gif');
49 INSERT INTO t2 VALUES (5,
'Effacer des clients',
'en_construction.html',40020,
'link.gif');
50 INSERT INTO t2 VALUES (6,
'Ajouter un service',
't2_ajoute_form.phtml',51050,
'link.gif');
53 select t1.id,t1.idservice,t2.ordre,t2.description from t1, t2 where t1.id = 2 and t1.idservice = t2.id order by t2.ordre;
58 # Test of ORDER BY on concat() result
61 create
table t1 (first
char(10),last
char(10));
62 insert into t1 values (
"Michael",
"Widenius");
63 insert into t1 values (
"Allan",
"Larsson");
64 insert into t1 values (
"David",
"Axmark");
65 select concat(first,
" ",last) as
name from t1 order by
name;
66 select concat(last," ",first) as name from t1 order by name;
70 # bug in distinct + order by
74 insert into t1 values(1),(2),(1),(2),(1),(2),(3);
75 select distinct
i from t1;
76 select distinct
i from t1 order by rand(5);
77 select distinct
i from t1 order by
i desc;
78 select distinct
i from t1 order by 1-
i;
79 select distinct i from t1 order by mod(i,2),
i;
86 create
table t1 ( pk
int primary key, name varchar(255) not null, number varchar(255) not null);
87 insert into t1 values (1,
'Gamma',
'123'), (2,
'Gamma Ext',
'123a'), (3,
'Alpha',
'001'), (4,
'Beta',
'200c');
88 select distinct t1.name as
'Building Name',t1.number as
'Building Number' from t1 order by t1.name asc;
93 # Order by on first index part
96 create
table t1 (
id int not null,col1
int not null,col2
int not null,
index(col1));
97 insert into t1 values(1,2,2),(2,2,1),(3,1,2),(4,1,1),(5,1,4),(6,2,3),(7,3,1),(8,2,4);
98 select * from t1 order by col1,col2;
99 select col1 from t1 order by
id;
100 select col1 as
id from t1 order by
id;
101 select concat(col1) as
id from t1 order by
id;
105 # Test of order by on field()
108 CREATE
TABLE t1 (
id int auto_increment primary key,aika varchar(40),aikakentta timestamp);
109 insert into t1 (aika) values ('Keskiviikko');
110 insert into t1 (aika) values ('Tiistai');
111 insert into t1 (aika) values ('Maanantai');
112 insert into t1 (aika) values ('Sunnuntai');
114 SELECT FIELD(SUBSTRING(t1.aika,1,2),'Ma','Ti','Ke','To','Pe','La','Su') AS
test FROM t1
ORDER by
test;
118 # Test of ORDER BY on IF
123 a
int unsigned NOT NULL,
124 b
int unsigned NOT NULL,
125 c
int unsigned NOT NULL,
133 c
int unsigned NOT NULL,
134 i
int unsigned NOT NULL,
140 c
int unsigned NOT NULL,
145 INSERT INTO t1 VALUES (1,1,1);
146 INSERT INTO t1 VALUES (2,1,2);
147 INSERT INTO t1 VALUES (3,2,1);
148 INSERT INTO t1 VALUES (4,2,2);
149 INSERT INTO t2 VALUES (1,50);
150 INSERT INTO t2 VALUES (2,25);
151 INSERT INTO t3 VALUES (1,
'123 Park Place');
152 INSERT INTO t3 VALUES (2,
'453 Boardwalk');
154 SELECT a,b,
if(b = 1,i,
if(b = 2,v,
''))
156 LEFT
JOIN t2 USING(c)
157 LEFT
JOIN t3 ON t3.c = t1.c;
159 SELECT a,b,if(b = 1,i,if(b = 2,v,''))
161 LEFT
JOIN t2 ON t1.c = t2.c
162 LEFT
JOIN t3 ON t3.c = t1.c;
164 SELECT a,b,if(b = 1,i,if(b = 2,v,''))
166 LEFT
JOIN t2 USING(c)
167 LEFT
JOIN t3 ON t3.c = t1.c
170 SELECT a,b,if(b = 1,i,if(b = 2,v,''))
172 LEFT
JOIN t2 ON t1.c = t2.c
173 LEFT
JOIN t3 ON t3.c = t1.c
179 # Test of ORDER BY (Bug found by Dean Edmonds)
182 create
table t1 (ID
int not null primary key, TransactionID
int not null);
183 insert into t1 (ID, TransactionID) values (1, 87), (2, 89), (3, 92), (4, 94), (5, 486), (6, 490), (7, 753), (9, 828), (10, 832), (11, 834), (12, 840);
184 create
table t2 (ID
int not null primary key, GroupID
int not null);
185 insert into t2 (ID, GroupID) values (87, 87), (89, 89), (92, 92), (94, 94), (486, 486), (490, 490),(753, 753), (828, 828), (832, 832), (834, 834), (840, 840);
186 create
table t3 (ID
int not null primary key, DateOfAction date not null);
187 insert into t3 (ID, DateOfAction) values (87, '1999-07-19'), (89, '1999-07-19'), (92, '1999-07-19'), (94, '1999-07-19'), (486, '1999-07-18'), (490, '2000-03-27'), (753, '2000-03-28'), (828, '1999-07-27'), (832, '1999-07-27'),(834, '1999-07-27'), (840, '1999-07-27');
188 select t3.DateOfAction, t1.TransactionID from t1 join t2 join t3 where t2.ID = t1.TransactionID and t3.ID = t2.GroupID order by t3.DateOfAction, t1.TransactionID;
189 select t3.DateOfAction, t1.TransactionID from t1 join t2 join t3 where t2.ID = t1.TransactionID and t3.ID = t2.GroupID order by t1.TransactionID,t3.DateOfAction;
192 #bug reported by Wouter de Jong
195 member_id
int(11) NOT NULL auto_increment,
196 inschrijf_datum varchar(20) NOT NULL
default '',
197 lastchange_datum varchar(20) NOT NULL
default '',
198 nickname varchar(20) NOT NULL
default '',
199 password varchar(8) NOT NULL
default '',
200 voornaam varchar(30) NOT NULL
default '',
201 tussenvoegsels varchar(10) NOT NULL
default '',
202 achternaam varchar(50) NOT NULL
default '',
203 straat varchar(100) NOT NULL
default '',
204 postcode varchar(10) NOT NULL
default '',
205 wijk varchar(40) NOT NULL
default '',
206 plaats varchar(50) NOT NULL
default '',
207 telefoon varchar(10) NOT NULL
default '',
208 geboortedatum date NOT NULL
default '0000-00-00',
209 geslacht varchar(5) NOT NULL
default '',
210 email varchar(80) NOT NULL
default '',
211 uin varchar(15) NOT NULL
default '',
212 homepage varchar(100) NOT NULL
default '',
213 internet varchar(15) NOT NULL
default '',
214 scherk varchar(30) NOT NULL
default '',
215 favo_boek varchar(50) NOT NULL
default '',
216 favo_tijdschrift varchar(50) NOT NULL
default '',
217 favo_tv varchar(50) NOT NULL
default '',
218 favo_eten varchar(50) NOT NULL
default '',
219 favo_muziek varchar(30) NOT NULL
default '',
220 info text NOT NULL
default '',
221 ipnr varchar(30) NOT NULL
default '',
222 PRIMARY
KEY (member_id)
223 ) ENGINE=MyISAM PACK_KEYS=1;
225 insert into t1 (member_id) values (1),(2),(3);
226 select member_id, nickname, voornaam FROM t1
227 ORDER by lastchange_datum DESC LIMIT 2;
231 # Test optimization of ORDER BY DESC
234 create
table t1 (a
int not null, b
int, c varchar(10), key (a, b, c));
235 insert into t1 values (1, NULL, NULL), (1, NULL,
'b'), (1, 1, NULL), (1, 1,
'b'), (1, 1,
'b'), (2, 1,
'a'), (2, 1,
'b'), (2, 2,
'a'), (2, 2,
'b'), (2, 3,
'c'),(1,3,
'b');
237 explain select * from t1 where (a = 1 and b is null and c =
'b') or (a > 2) order by a desc;
238 select * from t1 where (a = 1 and b is null and c = 'b') or (a > 2) order by a desc;
239 explain select * from t1 where a >= 1 and a < 3 order by a desc;
240 select * from t1 where a >= 1 and a < 3 order by a desc;
241 explain select * from t1 where a = 1 order by a desc, b desc;
242 select * from t1 where a = 1 order by a desc, b desc;
243 explain select * from t1 where a = 1 and b is null order by a desc, b desc;
244 select * from t1 where a = 1 and b is null order by a desc, b desc;
245 explain select * from t1 where a >= 1 and a < 3 and b >0 order by a desc,b desc;
246 explain select * from t1 where a = 2 and b >0 order by a desc,b desc;
247 explain select * from t1 where a = 2 and b is null order by a desc,b desc;
248 explain select * from t1 where a = 2 and (b is null or b > 0) order by a
250 explain select * from t1 where a = 2 and b > 0 order by a desc,b desc;
251 explain select * from t1 where a = 2 and b < 2 order by a desc,b desc;
252 explain select * from t1 where a = 1 order by b desc;
253 select * from t1 where a = 1 order by b desc;
255 # Test things when we don't have NULL keys
258 alter
table t1 modify b
int not null, modify c varchar(10) not null;
259 explain select * from t1 order by a, b, c;
260 select * from t1 order by a, b, c;
261 explain select * from t1 order by a desc, b desc, c desc;
262 select * from t1 order by a desc, b desc, c desc;
263 # test multiple ranges, NO_MAX_RANGE and EQ_RANGE
264 explain select * from t1 where (a = 1 and b = 1 and c =
'b') or (a > 2) order by a desc;
265 select * from t1 where (a = 1 and b = 1 and c = 'b') or (a > 2) order by a desc;
266 # test NEAR_MAX, NO_MIN_RANGE
267 explain select * from t1 where a < 2 and b <= 1 order by a desc, b desc;
268 select * from t1 where a < 2 and b <= 1 order by a desc, b desc;
269 select count(*) from t1 where a < 5 and b > 0;
270 select * from t1 where a < 5 and b > 0 order by a desc,b desc;
271 # test HA_READ_AFTER_KEY (at the end of the file), NEAR_MIN
272 explain select * from t1 where a between 1 and 3 and b <= 1 order by a desc, b desc;
273 select * from t1 where a between 1 and 3 and b <= 1 order by a desc, b desc;
274 # test HA_READ_AFTER_KEY (in the middle of the file)
275 explain select * from t1 where a between 0 and 1 order by a desc, b desc;
276 select * from t1 where a between 0 and 1 order by a desc, b desc;
281 gid
int(10)
unsigned NOT NULL auto_increment,
282 cid smallint(5)
unsigned NOT NULL
default '0',
284 KEY component_id (cid)
286 INSERT INTO t1 VALUES (103853,108),(103867,108),(103962,108),(104505,108),(104619,108),(104620,108);
287 ALTER
TABLE t1 add skr
int(10) not null;
290 gid
int(10)
unsigned NOT NULL default '0',
291 uid smallint(5)
unsigned NOT NULL default '1',
292 sid tinyint(3)
unsigned NOT NULL default '1',
297 INSERT INTO t2 VALUES (103853,250,5),(103867,27,5),(103962,27,5),(104505,117,5),(104619,75,5),(104620,15,5);
300 uid smallint(6) NOT NULL auto_increment,
303 INSERT INTO t3 VALUES (1),(15),(27),(75),(117),(250);
304 ALTER
TABLE t3 add skr
int(10) not null;
306 select t1.gid, t2.sid, t3.uid from t2, t1, t3 where t2.gid = t1.gid and t2.uid = t3.uid order by t3.uid, t1.gid;
307 select t1.gid, t2.sid, t3.uid from t3, t2, t1 where t2.gid = t1.gid and t2.uid = t3.uid order by t3.uid, t1.gid;
309 # The following ORDER BY can be optimimized
310 EXPLAIN select t1.gid, t2.sid, t3.uid from t3, t2, t1 where t2.gid = t1.gid and t2.uid = t3.uid order by t1.gid, t3.uid;
311 EXPLAIN SELECT t1.gid, t3.uid from t1, t3 where t1.gid = t3.uid order by t1.gid,t3.skr;
313 # The following ORDER BY can't be optimimized
314 EXPLAIN SELECT t1.gid, t2.sid, t3.uid from t2, t1, t3 where t2.gid = t1.gid and t2.uid = t3.uid order by t3.uid, t1.gid;
315 EXPLAIN SELECT t1.gid, t3.uid from t1, t3 where t1.gid = t3.uid order by t3.skr,t1.gid;
316 EXPLAIN SELECT t1.gid, t3.uid from t1, t3 where t1.skr = t3.uid order by t1.gid,t3.skr;
320 # Test of bug when doing an ORDER BY with const items
324 `titre`
char(80) NOT NULL
default '',
325 `numeropost` mediumint(8)
unsigned NOT NULL auto_increment,
326 `date` datetime NOT NULL
default '0000-00-00 00:00:00',
327 `auteur`
char(35) NOT NULL
default '',
328 `icone` tinyint(2)
unsigned NOT NULL
default '0',
329 `lastauteur`
char(35) NOT NULL
default '',
330 `nbrep` smallint(6)
unsigned NOT NULL
default '0',
331 `dest`
char(35) NOT NULL
default '',
332 `lu` tinyint(1)
unsigned NOT NULL
default '0',
333 `vue` mediumint(8)
unsigned NOT NULL
default '0',
334 `ludest` tinyint(1)
unsigned NOT NULL
default '0',
335 `ouvert` tinyint(1)
unsigned NOT NULL
default '1',
336 PRIMARY
KEY (`numeropost`),
338 KEY `dest` (`dest`,`ludest`),
339 KEY `auteur` (`auteur`,`lu`),
340 KEY `auteur_2` (`auteur`,`date`),
341 KEY `dest_2` (`dest`,`date`)
345 `numeropost` mediumint(8)
unsigned NOT NULL default '0',
346 `pseudo`
char(35) NOT NULL default '',
347 PRIMARY
KEY (`numeropost`,`pseudo`),
348 KEY `pseudo` (`pseudo`)
351 INSERT INTO t1 (titre,auteur,dest) VALUES ('test','joce','bug');
352 INSERT INTO t2 (numeropost,pseudo) VALUES (1,'joce'),(1,'bug');
353 SELECT titre,t1.numeropost,auteur,icone,nbrep,0,date,vue,ouvert,lastauteur,dest FROM t2 LEFT
JOIN t1 USING(numeropost) WHERE t2.pseudo='joce'
ORDER BY date DESC LIMIT 0,30;
354 SELECT titre,numeropost,auteur,icone,nbrep,0,date,vue,ouvert,lastauteur,dest FROM t2 LEFT
JOIN t1 USING(numeropost) WHERE t2.pseudo='joce'
ORDER BY date DESC LIMIT 0,30;
355 SELECT titre,t1.numeropost,auteur,icone,nbrep,'0',date,vue,ouvert,lastauteur,dest FROM t2 LEFT
JOIN t1 USING(numeropost) WHERE t2.pseudo='joce'
ORDER BY date DESC LIMIT 0,30;
356 SELECT titre,numeropost,auteur,icone,nbrep,'0',date,vue,ouvert,lastauteur,dest FROM t2 LEFT
JOIN t1 USING(numeropost) WHERE t2.pseudo='joce'
ORDER BY date DESC LIMIT 0,30;
360 # Test order by with NULL values
362 CREATE
TABLE t1 (a
int, b
int);
363 INSERT INTO t1 VALUES (1, 2);
364 INSERT INTO t1 VALUES (3, 4);
365 INSERT INTO t1 VALUES (5, NULL);
366 SELECT * FROM t1
ORDER BY b;
367 SELECT * FROM t1
ORDER BY b DESC;
368 SELECT * FROM t1
ORDER BY (a + b);
369 SELECT * FROM t1
ORDER BY (a + b) DESC;
373 # Test of FORCE INDEX ... ORDER BY
376 create
table t1(
id int not null auto_increment primary key, t
char(12));
381 eval insert into t1(t) values ('$1');
385 explain select
id,t from t1 order by
id;
386 explain select
id,t from t1 force
index (primary) order by
id;
390 # Test of test_if_subkey() function
393 FieldKey varchar(36) NOT NULL
default '',
394 LongVal bigint(20)
default NULL,
395 StringVal mediumtext,
396 KEY FieldKey (FieldKey),
397 KEY LongField (FieldKey,LongVal),
398 KEY StringField (FieldKey,StringVal(32))
400 INSERT INTO t1 VALUES (
'0',3,
'0'),(
'0',2,
'1'),(
'0',1,
'2'),(
'1',2,
'1'),(
'1',1,
'3'), (
'1',0,
'2'),(
'2',3,
'0'),(
'2',2,
'1'),(
'2',1,
'2'),(
'2',3,
'0'),(
'2',2,
'1'),(
'2',1,
'2'),(
'3',2,
'1'),(
'3',1,
'2'),(
'3',
'3',
'3');
401 EXPLAIN SELECT * FROM t1 WHERE FieldKey =
'1' ORDER BY LongVal;
402 SELECT * FROM t1 WHERE FieldKey =
'1' ORDER BY LongVal;
403 EXPLAIN SELECT * FROM t1 ignore
index (FieldKey, LongField) WHERE FieldKey > '2'
ORDER BY LongVal;
404 SELECT * FROM t1 WHERE FieldKey > '2'
ORDER BY LongVal;
405 EXPLAIN SELECT * FROM t1 WHERE FieldKey > '2'
ORDER BY FieldKey, LongVal;
406 SELECT * FROM t1 WHERE FieldKey > '2'
ORDER BY FieldKey, LongVal;
409 # Bug #1945 - Crashing bug with bad User Variables in UPDATE ... ORDER BY ...
411 CREATE
TABLE t1 (a INT, b INT);
413 UPDATE t1 SET a=0
ORDER BY (a=@
id), b;
417 # Bug when doing an order by on a 1 byte string (Bug #2147)
420 CREATE
TABLE t1 (
id smallint(6)
unsigned NOT NULL
default '0', menu tinyint(4) NOT NULL
default '0',
KEY id (
id),
KEY menu (menu)) ENGINE=MyISAM;
421 INSERT INTO t1 VALUES (11384, 2),(11392, 2);
422 SELECT
id FROM t1 WHERE
id <11984 AND menu =2
ORDER BY
id DESC LIMIT 1 ;
426 # REF_OR_NULL optimization + filesort (bug #2419)
430 insert into t1 values (2, 1), (1, 1), (4, NULL), (3, NULL), (6, 2), (5, 2);
431 explain select * from t1 where b=1 or b is null order by a;
432 select * from t1 where b=1 or b is null order by a;
433 explain select * from t1 where b=2 or b is null order by a;
434 select * from t1 where b=2 or b is null order by a;
438 # Bug #3155 - Strange results with index (x, y) ... WHERE ... ORDER BY pk
441 create
table t1 (a
int not null auto_increment, b
int not null, c
int not null, d
int not null,
442 key(a,b,d), key(c,b,a));
443 create
table t2 like t1;
444 insert into t1 values (NULL, 1, 2, 0), (NULL, 2, 1, 1), (NULL, 3, 4, 2), (NULL, 4, 3, 3);
445 insert into t2 select null, b, c, d from t1;
446 insert into t1 select null, b, c, d from t2;
447 insert into t2 select null, b, c, d from t1;
448 insert into t1 select null, b, c, d from t2;
449 insert into t2 select null, b, c, d from t1;
450 insert into t1 select null, b, c, d from t2;
451 insert into t2 select null, b, c, d from t1;
452 insert into t1 select null, b, c, d from t2;
453 insert into t2 select null, b, c, d from t1;
454 insert into t1 select null, b, c, d from t2;
457 insert into t1 select 1, b, c + (@row:=@row - 1) * 10, d - @row from t2
limit 10;
458 select * from t1 where a=1 and b in (1) order by c, b, a;
459 select * from t1 where a=1 and b in (1);
464 # Ambiguos order by when renamed column is identical to another in result.
465 # Should not fail and prefer column from t1 for sorting.
467 create
table t1 (col1
int, col
int);
468 create
table t2 (col2
int, col
int);
469 insert into t1 values (1,1),(2,2),(3,3);
470 insert into t2 values (1,3),(2,2),(3,1);
471 select t1.* , t2.col as t2_col from t1 left join t2 on (t1.col1=t2.col2)
475 # Let us also test various ambiguos and potentially ambiguos cases
479 select col1 as col, col from t1 order by col;
481 select t1.col as c1, t2.col as c2 from t1, t2 where t1.col1=t2.col2
484 select t1.col as c1, t2.col as c2 from t1, t2 where t1.col1=t2.col2
487 select col1 from t1, t2 where t1.col1=t2.col2 order by col;
489 select t1.col as t1_col, t2.col2 from t1, t2 where t1.col1=t2.col2
492 select t1.col as t1_col, t2.col from t1, t2 where t1.col1=t2.col2
494 select col2 as c, col as c from t2 order by col;
495 select col2 as col, col as col2 from t2 order by col;
496 select t2.col2, t2.col, t2.col from t2 order by col;
498 select t2.col2 as col from t2 order by t2.col;
499 select t2.col2 as col, t2.col from t2 order by t2.col;
500 select t2.col2, t2.col, t2.col from t2 order by t2.col;
505 # Bug #5428: a problem with small max_sort_length value
508 create
table t1 (a
char(25));
509 insert into t1
set a = repeat(
'x', 20);
510 insert into t1
set a = concat(repeat(
'x', 19),
'z');
511 insert into t1
set a = concat(repeat(
'x', 19),
'ab');
512 insert into t1
set a = concat(repeat(
'x', 19),
'aa');
513 set max_sort_length=20;
514 select a from t1 order by a;
522 `sid` decimal(8,0)
default null,
523 `wnid` varchar(11) not null
default '',
524 key `wnid14` (`wnid`(4)),
526 ) engine=myisam default charset=latin1;
528 insert into t1 (`sid`, `wnid`) values
529 ('10100','01019000000'),('37986','01019000000'),('37987','01019010000'),
530 ('39560','01019090000'),('37989','01019000000'),('37990','01019011000'),
531 ('37991','01019011000'),('37992','01019019000'),('37993','01019030000'),
532 ('37994','01019090000'),('475','02070000000'),('25253','02071100000'),
533 ('25255','02071100000'),('25256','02071110000'),('25258','02071130000'),
534 ('25259','02071190000'),('25260','02071200000'),('25261','02071210000'),
535 ('25262','02071290000'),('25263','02071300000'),('25264','02071310000'),
536 ('25265','02071310000'),('25266','02071320000'),('25267','02071320000'),
537 ('25269','02071330000'),('25270','02071340000'),('25271','02071350000'),
538 ('25272','02071360000'),('25273','02071370000'),('25281','02071391000'),
539 ('25282','02071391000'),('25283','02071399000'),('25284','02071400000'),
540 ('25285','02071410000'),('25286','02071410000'),('25287','02071420000'),
541 ('25288','02071420000'),('25291','02071430000'),('25290','02071440000'),
542 ('25292','02071450000'),('25293','02071460000'),('25294','02071470000'),
543 ('25295','02071491000'),('25296','02071491000'),('25297','02071499000');
545 explain select * from t1 where wnid like '0101%' order by wnid;
547 select * from t1 where wnid like '0101%' order by wnid;
552 # Bug #7672 - a wrong result for a select query in braces followed by order by
555 CREATE
TABLE t1 (a
int);
556 INSERT INTO t1 VALUES (2), (1), (1), (2), (1);
557 SELECT a FROM t1
ORDER BY a;
558 (SELECT a FROM t1)
ORDER BY a;
562 # Bug #18767: global ORDER BY applied to a SELECT with ORDER BY either was
563 # ignored or 'concatened' to the latter.
565 CREATE
TABLE t1 (a
int, b
int);
566 INSERT INTO t1 VALUES (1,30), (2,20), (1,10), (2,30), (1,20), (2,10);
568 (SELECT b,a FROM t1
ORDER BY a,b)
ORDER BY b,a;
569 (SELECT b FROM t1
ORDER BY b DESC)
ORDER BY b ASC;
570 (SELECT b,a FROM t1
ORDER BY b,a)
ORDER BY a,b;
571 (SELECT b,a FROM t1
ORDER by b,a LIMIT 3)
ORDER by a,b;
576 # Bug #22457: Column alias in ORDER BY works, but not if in an expression
579 CREATE
TABLE t1 (a INT); INSERT INTO t1 VALUES (1),(2);
580 SELECT a + 1 AS num FROM t1
ORDER BY 30 - num;
581 SELECT CONCAT(
'test', a) AS str FROM t1
ORDER BY UPPER(str);
582 SELECT a + 1 AS num FROM t1 GROUP BY 30 - num;
583 SELECT a + 1 AS num FROM t1 HAVING 30 - num;
585 SELECT a + 1 AS num, num + 1 FROM t1;
586 SELECT a + 1 AS num, (select num + 2 FROM t1 LIMIT 1) FROM t1;
588 SELECT a.a + 1 AS num FROM t1 a
JOIN t1 b ON num = b.a;
592 # Bug#25126: Reference to non-existant column in UPDATE...ORDER BY...
595 CREATE
TABLE bug25126 (
596 val
int unsigned NOT NULL AUTO_INCREMENT PRIMARY
KEY
599 UPDATE bug25126 SET MissingCol = MissingCol;
601 UPDATE bug25126 SET val = val
ORDER BY MissingCol;
602 UPDATE bug25126 SET val = val
ORDER BY val;
603 UPDATE bug25126 SET val = 1
ORDER BY val;
605 UPDATE bug25126 SET val = 1
ORDER BY MissingCol;
607 UPDATE bug25126 SET val = 1
ORDER BY val, MissingCol;
609 UPDATE bug25126 SET val = MissingCol
ORDER BY MissingCol;
611 UPDATE bug25126 SET MissingCol = 1
ORDER BY val, MissingCol;
613 UPDATE bug25126 SET MissingCol = 1
ORDER BY MissingCol;
615 UPDATE bug25126 SET MissingCol = val
ORDER BY MissingCol;
617 UPDATE bug25126 SET MissingCol = MissingCol
ORDER BY MissingCol;
621 # Bug #25427: crash when order by expression contains a name
622 # that cannot be resolved unambiguously
625 CREATE
TABLE t1 (a
int);
627 SELECT p.a AS val, q.a AS val1 FROM t1 p, t1 q
ORDER BY val > 1;
629 SELECT p.a AS val, q.a AS val FROM t1 p, t1 q
ORDER BY val;
631 SELECT p.a AS val, q.a AS val FROM t1 p, t1 q
ORDER BY val > 1;
636 # Bug #27532: ORDER/GROUP BY expressions with IN/BETWEEN and NOT IN/BETWEEN
639 CREATE
TABLE t1 (a
int);
640 INSERT INTO t1 VALUES (3), (2), (4), (1);
642 SELECT a, IF(a IN (2,3), a, a+10) FROM t1
643 ORDER BY IF(a IN (2,3), a, a+10);
644 SELECT a, IF(a NOT IN (2,3), a, a+10) FROM t1
645 ORDER BY IF(a NOT IN (2,3), a, a+10);
646 SELECT a, IF(a IN (2,3), a, a+10) FROM t1
647 ORDER BY IF(a NOT IN (2,3), a, a+10);
649 SELECT a, IF(a BETWEEN 2 AND 3, a, a+10) FROM t1
650 ORDER BY IF(a BETWEEN 2 AND 3, a, a+10);
651 SELECT a, IF(a NOT BETWEEN 2 AND 3, a, a+10) FROM t1
652 ORDER BY IF(a NOT BETWEEN 2 AND 3, a, a+10);
653 SELECT a, IF(a BETWEEN 2 AND 3, a, a+10) FROM t1
654 ORDER BY IF(a NOT BETWEEN 2 AND 3, a, a+10);
656 SELECT IF(a IN (1,2), a, '') as x1, IF(a NOT IN (1,2), a, '') as x2
657 FROM t1 GROUP BY x1, x2;
658 SELECT IF(a IN (1,2), a, '') as x1, IF(a NOT IN (1,2), a, '') as x2
659 FROM t1 GROUP BY x1, IF(a NOT IN (1,2), a, '');
661 # The remaining queries are for better coverage
662 SELECT a, a IN (1,2) FROM t1
ORDER BY a IN (1,2);
663 SELECT a FROM t1
ORDER BY a IN (1,2);
664 SELECT a+10 FROM t1
ORDER BY a IN (1,2);
665 SELECT a, IF(a IN (1,2), a, a+10) FROM t1
666 ORDER BY IF(a IN (3,4), a, a+10);
670 create
table t1 (a
int not null, b
int not null, c
int not null);
671 insert t1 values (1,1,1),(1,1,2),(1,2,1);
672 select a, b from t1
group by a, b order by sum(c);
676 # Bug#21302: Result not properly sorted when using an ORDER BY on a second
679 CREATE
TABLE t1 (a
int, b
int, PRIMARY
KEY (a));
680 INSERT INTO t1 VALUES (1,1), (2,2), (3,3);
682 explain SELECT t1.b as a, t2.b as c FROM
683 t1 LEFT
JOIN t1 t2 ON (t1.a = t2.a AND t2.a = 2)
685 SELECT t2.b as c FROM
686 t1 LEFT
JOIN t1 t2 ON (t1.a = t2.a AND t2.a = 2)
689 # check that it still removes sort of const table
690 explain SELECT t1.b as a, t2.b as c FROM
691 t1
JOIN t1 t2 ON (t1.a = t2.a AND t2.a = 2)
694 CREATE
TABLE t2 LIKE t1;
695 INSERT INTO t2 SELECT * from t1;
696 CREATE
TABLE t3 LIKE t1;
697 INSERT INTO t3 SELECT * from t1;
698 CREATE
TABLE t4 LIKE t1;
699 INSERT INTO t4 SELECT * from t1;
700 INSERT INTO t1 values (0,0),(4,4);
702 SELECT t2.b FROM t1 LEFT
JOIN (t2, t3 LEFT
JOIN t4 ON t3.a=t4.a)
703 ON (t1.a=t2.a AND t1.b=t3.b) order by t2.b;
705 DROP
TABLE t1,t2,t3,t4;
708 # Bug#25376: Incomplete setup of ORDER BY clause results in a wrong result.
710 create
table t1 (a
int, b
int, c
int);
711 insert into t1 values (1,2,3), (9,8,3), (19,4,3), (1,4,9);
712 select a,(sum(b)/sum(c)) as ratio from t1
group by a order by sum(b)/sum(c) asc;
716 # Bug#26672: Incorrect SEC_TO_TIME() casting in ORDER BY
718 CREATE
TABLE t1 (a INT UNSIGNED NOT NULL, b TIME);
719 INSERT INTO t1 (a) VALUES (100000), (0), (100), (1000000),(10000), (1000), (10);
720 UPDATE t1 SET b = SEC_TO_TIME(a);
723 SELECT a, b FROM t1
ORDER BY b DESC;
725 # must be ordered as the above
726 SELECT a, b FROM t1
ORDER BY SEC_TO_TIME(a) DESC;
731 # BUG#16590: Optimized does not do right "const" table pre-read
733 CREATE
TABLE t1 (a INT, b INT, PRIMARY
KEY (a), UNIQUE
KEY b (b));
734 INSERT INTO t1 VALUES (1,1),(2,2);
736 CREATE
TABLE t2 (a INT, b INT,
KEY a (a,b));
737 INSERT INTO t2 VALUES (1,1),(1,2),(2,1),(2,2);
739 EXPLAIN SELECT 1 FROM t1,t2 WHERE t1.b=2 AND t1.a=t2.a
ORDER BY t2.b;
746 # Bug #28404: query with ORDER BY and ref access
750 id int auto_increment PRIMARY
KEY, c2
int, c3
int, INDEX k2(c2), INDEX k3(c3));
752 INSERT INTO t1 (c2,c3) VALUES
753 (31,34),(35,38),(34,31),(32,35),(31,39),
754 (11,14),(15,18),(14,11),(12,15),(11,19);
756 INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
757 INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
758 INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
759 INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
760 INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
761 INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
762 INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
763 INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
764 INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
765 INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
766 INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
767 INSERT INTO t1 (c2,c3) SELECT c2,c3 FROM t1;
768 UPDATE t1 SET c2=20 WHERE
id%100 = 0;
769 SELECT COUNT(*) FROM t1;
771 CREATE
TABLE t2 LIKE t1;
772 INSERT INTO t2 SELECT * FROM t1
ORDER BY
id;
774 EXPLAIN SELECT
id,c3 FROM t2 WHERE c2=11
ORDER BY c3 LIMIT 20;
775 EXPLAIN SELECT
id,c3 FROM t2 WHERE c2=11
ORDER BY c3 LIMIT 4000;
776 EXPLAIN SELECT
id,c3 FROM t2 WHERE c2 BETWEEN 10 AND 12
ORDER BY c3 LIMIT 20;
777 EXPLAIN SELECT
id,c3 FROM t2 WHERE c2 BETWEEN 20 AND 30
ORDER BY c3 LIMIT 4000;
779 SELECT
id,c3 FROM t2 WHERE c2=11
ORDER BY c3 LIMIT 20;
784 # Bug #30665: Inconsistent optimization of IGNORE INDEX FOR {ORDER BY|GROUP BY}
792 INSERT INTO t1 VALUES (1,1),(2,2),(3,3),(4,4);
793 INSERT INTO t1 SELECT a + 4, b + 4 FROM t1;
794 INSERT INTO t1 SELECT a + 8, b + 8 FROM t1;
795 INSERT INTO t1 SELECT a +16, b +16 FROM t1;
796 INSERT INTO t1 SELECT a +32, b +32 FROM t1;
797 INSERT INTO t1 SELECT a +64, b +64 FROM t1;
799 EXPLAIN SELECT a FROM t1 IGNORE INDEX FOR GROUP BY (a, ab) GROUP BY a;
802 --let $q = `show status like 'Created_tmp_tables';`
803 eval set @tmp_tables_before =
804 CAST(
REPLACE('$q', 'Created_tmp_tables', '') AS UNSIGNED);
807 SELECT a FROM t1 IGNORE INDEX FOR GROUP BY (a, ab) GROUP BY a;
809 # this query creates one temporary table in itself, which we are not
813 --let $q = `show status like
'Created_tmp_tables';`
814 eval
set @tmp_tables_after =
815 CAST(
REPLACE(
'$q',
'Created_tmp_tables',
'') AS UNSIGNED);
818 SELECT @tmp_tables_after = @tmp_tables_before ;
820 EXPLAIN SELECT a FROM t1 IGNORE INDEX FOR
ORDER BY (a, ab)
ORDER BY a;
823 --let $q = `show status like 'Created_tmp_tables';`
824 eval set @tmp_tables_before =
825 CAST(
REPLACE('$q', 'Created_tmp_tables', '') AS UNSIGNED);
828 SELECT a FROM t1 IGNORE INDEX FOR
ORDER BY (a, ab)
ORDER BY a;
831 --let $q = `show status like 'Created_tmp_tables';`
832 eval set @tmp_tables_after =
833 CAST(
REPLACE('$q', 'Created_tmp_tables', '') AS UNSIGNED);
836 SELECT @tmp_tables_after = @tmp_tables_before;
840 --echo # Bug#31590: Wrong error
message on sort buffer being too small.
842 create
table t1(a
int, b tinytext);
843 insert into t1 values (1,2),(3,2);
844 set session sort_buffer_size= 30000;
845 set session max_sort_length= 2180;
846 CALL
mtr.add_suppression(
"Out of sort memory");
847 --error ER_OUT_OF_SORTMEMORY
848 select * from t1 order by b;
850 call
mtr.add_suppression(
"Out of sort memory; increase server sort buffer size");
852 --echo # Bug #39844: Query Crash Mysql Server 5.0.67
855 CREATE
TABLE t1 (a INT PRIMARY KEY);
856 CREATE
TABLE t2 (a INT PRIMARY KEY, b INT);
857 CREATE
TABLE t3 (c INT);
859 INSERT INTO t1 (a) VALUES (1), (2);
860 INSERT INTO t2 (a,b) VALUES (1,2), (2,3);
861 INSERT INTO t3 (c) VALUES (1), (2);
864 (SELECT t1.a FROM t1, t2 WHERE t1.a = t2.b AND t2.a = t3.c
ORDER BY t1.a)
867 DROP
TABLE t1, t2, t3;
871 --echo # Bug #42760: Select doesn
't return desired results when we have null
878 UNIQUE KEY a_c (a,c),
881 INSERT INTO t1 VALUES (1, 10), (2, NULL);
883 --echo # Must use ref-or-null on the a_c index
885 SELECT 1 AS col FROM t1 WHERE a=2 AND (c=10 OR c IS NULL) ORDER BY c;
886 --echo # Must return 1 row
887 SELECT 1 AS col FROM t1 WHERE a=2 AND (c=10 OR c IS NULL) ORDER BY c;
889 # part 2 of the problem : DESC test cases
890 --echo # Must use ref-or-null on the a_c index
891 --replace_column 1 x 2 x 3 x 6 x 7 x 8 x 9 x 10 x
893 SELECT 1 AS col FROM t1 WHERE a=2 AND (c=10 OR c IS NULL) ORDER BY c DESC;
894 --echo # Must return 1 row
895 SELECT 1 AS col FROM t1 WHERE a=2 AND (c=10 OR c IS NULL) ORDER BY c DESC;
901 --echo End of 5.0 tests
905 # Bug #35206: select query result different if the key is indexed or not
908 CREATE TABLE t2 (a varchar(32), b int(11), c float, d double,
909 UNIQUE KEY a (a,b,c), KEY b (b), KEY c (c));
911 CREATE TABLE t1 (a varchar(32), b char(3), UNIQUE KEY a (a,b), KEY b (b));
912 CREATE TABLE t3 (a varchar(32), b char(3), UNIQUE KEY a (a,b));
915 INSERT INTO t1 (a, b) VALUES
916 ('domestic
', 'CH
'), ('domestic
', 'LI
'), ('plfcz1
', 'FR
'), ('all
', 'AD
'),
917 ('all
', 'AE
'), ('all
', 'AF
'), ('all
', 'AG
'), ('all
', 'AI
'), ('all
', 'AL
'),
918 ('all
', 'AM
'), ('all
', 'AN
'), ('all
', 'AO
'), ('all
', 'AP
'), ('all
', 'AQ
'),
919 ('all
', 'AR
'), ('all
', 'AS
'), ('all
', 'AT
'), ('all
', 'AU
'), ('all
', 'AW
'),
920 ('all
', 'AZ
'), ('all
', 'BA
'), ('all
', 'BB'), ('all
', 'BD
'), ('all
', 'BE
'),
921 ('all
', 'BF
'), ('all
', 'BG
'), ('all
', 'BH
'), ('all
', 'BI
'), ('all
', 'BJ
'),
922 ('all
', 'BM
'), ('all
', 'BN
'), ('all
', 'BO
'), ('all
', 'BR
'), ('all
', 'BS
'),
923 ('all
', 'BT
'), ('all
', 'BV
'), ('all
', 'BW
'), ('all
', 'BY
'), ('all
', 'BZ
'),
924 ('all
', 'CA
'), ('all
', 'CC
'), ('all
', 'CD
'), ('all
', 'CF
'), ('all
', 'CG
'),
925 ('all
', 'CH
'), ('all
', 'CI
'), ('all
', 'CK
'), ('all
', 'CL
'), ('all
', 'CM
'),
926 ('all
', 'CN
'), ('all
', 'CO
'), ('all
', 'CR
'), ('all
', 'CU
'), ('all
', 'CV
'),
927 ('all
', 'CX
'), ('all
', 'CY
'), ('all
', 'CZ
'), ('all
', 'DE
'), ('all
', 'DJ
'),
928 ('all
', 'DK
'), ('all
', 'DM
'), ('all
', 'DO
'), ('all
', 'DZ
'), ('all
', 'EC
'),
929 ('all
', 'EE
'), ('all
', 'EG
'), ('all
', 'EH
'), ('all
', 'EI
'), ('all
', 'ER
'),
930 ('all
', 'ES
'), ('all
', 'ET
'), ('all
', 'FI
'), ('all
', 'FJ
'), ('all
', 'FK
'),
931 ('all
', 'FM
'), ('all
', 'FO
'), ('all
', 'FR
'), ('all
', 'FX
'), ('all
', 'GA
'),
932 ('all
', 'GB
'), ('all
', 'GD
'), ('all
', 'GE
'), ('all
', 'GF
'), ('all
', 'GH
'),
933 ('all
', 'GI
'), ('all
', 'GL
'), ('all
', 'GM
'), ('all
', 'GN
'), ('all
', 'GP
'),
934 ('all
', 'GQ
'), ('all
', 'GR
'), ('all
', 'GS
'), ('all
', 'GT
'), ('all
', 'GU
'),
935 ('all
', 'GW
'), ('all
', 'GY
'), ('all
', 'HK
'), ('all
', 'HM
'), ('all
', 'HN
'),
936 ( 'all
', 'HR
'), ( 'all
', 'HT
'), ( 'all
', 'HU
'), ( 'all
', 'ID
'), ( 'all
', 'IE
'),
937 ( 'all
', 'IL
'), ( 'all
', 'IN
'), ( 'all
', 'IO
'), ( 'all
', 'IQ
'), ( 'all
', 'IR
'),
938 ( 'all
', 'IS
'), ( 'all
', 'IT
'), ( 'all
', 'JM
'), ( 'all
', 'JO
'), ( 'all
', 'JP
'),
939 ( 'all
', 'KE
'), ( 'all
', 'KG
'), ( 'all
', 'KH
'), ( 'all
', 'KI
'), ( 'all
', 'KM
'),
940 ( 'all
', 'KN
'), ( 'all
', 'KP
'), ( 'all
', 'KR
'), ( 'all
', 'KW
'), ( 'all
', 'KY
'),
941 ( 'all
', 'KZ
'), ( 'all
', 'LA
'), ( 'all
', 'LB
'), ( 'all
', 'LC
'), ( 'all
', 'LI
'),
942 ( 'all
', 'LK
'), ( 'all
', 'LR
'), ( 'all
', 'LS
'), ( 'all
', 'LT
'), ( 'all
', 'LU
'),
943 ( 'all
', 'LV
'), ( 'all
', 'LY
'), ( 'all
', 'MA
'), ( 'all
', 'MC
'), ( 'all
', 'MD
'),
944 ( 'all
', 'ME
'), ( 'all
', 'MG
'), ( 'all
', 'MH
'), ( 'all
', 'MK
'), ( 'all
', 'ML
'),
945 ( 'all
', 'MM
'), ( 'all
', 'MN
'), ( 'all
', 'MO
'), ( 'all
', 'MP
'), ( 'all
', 'MQ
'),
946 ( 'all
', 'MR
'), ( 'all
', 'MS
'), ( 'all
', 'MT
'), ( 'all
', 'MU
'), ( 'all
', 'MV
'),
947 ( 'all
', 'MW
'), ( 'all
', 'MX
'), ( 'all
', 'MY
'), ( 'all
', 'MZ
'), ( 'all
', 'NA
'),
948 ( 'all
', 'NC
'), ( 'all
', 'NE
'), ( 'all
', 'NF
'), ( 'all
', 'NG
'), ( 'all
', 'NI
'),
949 ( 'all
', 'NL
'), ( 'all
', 'NO
'), ( 'all
', 'NP
'), ( 'all
', 'NR
'), ( 'all
', 'NU
'),
950 ( 'all
', 'NV
'), ( 'all
', 'NZ
'), ( 'all
', 'OM
'), ( 'all
', 'PA
'), ( 'all
', 'PE
'),
951 ( 'all
', 'PF
'), ( 'all
', 'PG
'), ( 'all
', 'PH
'), ( 'all
', 'PK
'), ( 'all
', 'PL
'),
952 ( 'all
', 'PM
'), ( 'all
', 'PN
'), ( 'all
', 'PR
'), ( 'all
', 'PS
'), ( 'all
', 'PT
'),
953 ( 'all
', 'PW
'), ( 'all
', 'PY
'), ( 'all
', 'QA
'), ( 'all
', 'RE
'), ( 'all
', 'RO
'),
954 ( 'all
', 'RU
'), ( 'all
', 'RW
'), ( 'all
', 'SA
'), ( 'all
', 'SB
'), ( 'all
', 'SC
'),
955 ( 'all
', 'SD
'), ( 'all
', 'SE
'), ( 'all
', 'SG
'), ( 'all
', 'SH
'), ( 'all
', 'SI
'),
956 ( 'all
', 'SJ
'), ( 'all
', 'SK
'), ( 'all
', 'SL
'), ( 'all
', 'SM
'), ( 'all
', 'SN
'),
957 ( 'all
', 'SO
'), ( 'all
', 'SR
'), ( 'all
', 'ST
'), ( 'all
', 'SV'), ( 'all
', 'SY
'),
958 ( 'all
', 'SZ
'), ( 'all
', 'TA
'), ( 'all
', 'TC
'), ( 'all
', 'TD
'), ( 'all
', 'TF
'),
959 ( 'all
', 'TG
'), ( 'all
', 'TH
'), ( 'all
', 'TJ
'), ( 'all
', 'TK
'), ( 'all
', 'TM
'),
960 ( 'all
', 'TN
'), ( 'all
', 'TO
'), ( 'all
', 'TP
'), ( 'all
', 'TR
'), ( 'all
', 'TT
'),
961 ( 'all
', 'TV
'), ( 'all
', 'TW
'), ( 'all
', 'TZ
'), ( 'all
', 'UA
'), ( 'all
', 'UG
'),
962 ( 'all
', 'UM
'), ( 'all
', 'US
'), ( 'all
', 'UY
'), ( 'all
', 'UZ
'), ( 'all
', 'VA
'),
963 ( 'all
', 'VC
'), ( 'all
', 'VE
'), ( 'all
', 'VG
'), ( 'all
', 'VI
'), ( 'all
', 'VN
'),
964 ( 'all
', 'VU
'), ( 'all
', 'WF
'), ( 'all
', 'WS
'), ( 'plfcz1
', 'FI
'),
965 ( 'all
', 'XE
'), ( 'all
', 'XS
'), ( 'all
', 'XU
'), ( 'plfcz1
', 'XE
'),
966 ( 'all
', 'YE
'), ( 'all
', 'YT
'), ( 'all
', 'YU
'), ( 'all
', 'ZA
'), ( 'all
', 'ZM
'),
967 ( 'all
', 'ZR
'), ( 'all
', 'ZW
'), ( 'foreign
', 'AD
'), ( 'foreign
', 'AE
'),
968 ( 'foreign
', 'AF
'), ( 'foreign
', 'AG
'), ( 'foreign
', 'AI
'),
969 ( 'foreign
', 'AL
'), ( 'foreign
', 'AM
'), ( 'foreign
', 'AN
'), ( 'foreign
', 'AO
'),
970 ( 'foreign
', 'AP
'), ( 'foreign
', 'AQ
'), ( 'foreign
', 'AR
'), ( 'foreign
', 'AS
'),
971 ( 'foreign
', 'AT
'), ( 'foreign
', 'AU
'), ( 'foreign
', 'AW
'), ( 'foreign
', 'AZ
'),
972 ( 'foreign
', 'BA
'), ( 'foreign
', 'BB'), ( 'foreign
', 'BD
'), ( 'foreign
', 'BE
'),
973 ( 'foreign
', 'BF
'), ( 'foreign
', 'BG
'), ( 'foreign
', 'BH
'), ( 'foreign
', 'BI
'),
974 ( 'foreign
', 'BJ
'), ( 'foreign
', 'BM
'), ( 'foreign
', 'BN
'), ( 'foreign
', 'BO
'),
975 ( 'foreign
', 'BR
'), ( 'foreign
', 'BS
'), ( 'foreign
', 'BT
'), ( 'foreign
', 'BV
'),
976 ( 'foreign
', 'BW
'), ( 'foreign
', 'BY
'), ( 'foreign
', 'BZ
'), ( 'foreign
', 'CA
'),
977 ( 'foreign
', 'CC
'), ( 'foreign
', 'CD
'), ( 'foreign
', 'CF
'), ( 'foreign
', 'CG
'),
978 ( 'foreign
', 'CI
'), ( 'foreign
', 'CK
'), ( 'foreign
', 'CL
'), ( 'foreign
', 'CM
'),
979 ( 'foreign
', 'CN
'), ( 'foreign
', 'CO
'), ( 'foreign
', 'CR
'), ( 'foreign
', 'CU
'),
980 ( 'foreign
', 'CV
'), ( 'foreign
', 'CX
'), ( 'foreign
', 'CY
'), ( 'foreign
', 'CZ
'),
981 ( 'foreign
', 'DE
'), ( 'foreign
', 'DJ
'), ( 'foreign
', 'DK
'), ( 'foreign
', 'DM
'),
982 ( 'foreign
', 'DO
'), ( 'foreign
', 'DZ
'), ( 'foreign
', 'EC
'), ( 'foreign
', 'EE
'),
983 ( 'foreign
', 'EG
'), ( 'foreign
', 'EH
'), ( 'foreign
', 'EI
'), ( 'foreign
', 'ER
'),
984 ( 'foreign
', 'ES
'), ( 'foreign
', 'ET
'), ( 'foreign
', 'FI
'), ( 'foreign
', 'FJ
'),
985 ( 'foreign
', 'FK
'), ( 'foreign
', 'FM
'), ( 'foreign
', 'FO
'), ( 'foreign
', 'FR
'),
986 ( 'foreign
', 'FX
'), ( 'foreign
', 'GA
'), ( 'foreign
', 'GB
'), ( 'foreign
', 'GD
'),
987 ( 'foreign
', 'GE
'), ( 'foreign
', 'GF
'), ( 'foreign
', 'GH
'), ( 'foreign
', 'GI
'),
988 ( 'foreign
', 'GL
'), ( 'foreign
', 'GM
'), ( 'foreign
', 'GN
'), ( 'foreign
', 'GP
'),
989 ( 'foreign
', 'GQ
'), ( 'foreign
', 'GR
'), ( 'foreign
', 'GS
'), ( 'foreign
', 'GT
'),
990 ( 'foreign
', 'GU
'), ( 'foreign
', 'GW
'), ( 'foreign
', 'GY
'), ( 'foreign
', 'HK
'),
991 ( 'foreign
', 'HM
'), ( 'foreign
', 'HN
'), ( 'foreign
', 'HR
'), ( 'foreign
', 'HT
'),
992 ( 'foreign
', 'HU
'), ( 'foreign
', 'ID
'), ( 'foreign
', 'IE
'), ( 'foreign
', 'IL
'),
993 ( 'foreign
', 'IN
'), ( 'foreign
', 'IO
'), ( 'foreign
', 'IQ
'), ( 'foreign
', 'IR
'),
994 ( 'foreign
', 'IS
'), ( 'foreign
', 'IT
'), ( 'foreign
', 'JM
'), ( 'foreign
', 'JO
'),
995 ( 'foreign
', 'JP
'), ( 'foreign
', 'KE
'), ( 'foreign
', 'KG
'), ( 'foreign
', 'KH
'),
996 ( 'foreign
', 'KI
'), ( 'foreign
', 'KM
'), ( 'foreign
', 'KN
'), ( 'foreign
', 'KP
'),
997 ( 'foreign
', 'KR
'), ( 'foreign
', 'KW
'), ( 'foreign
', 'KY
'), ( 'foreign
', 'KZ
'),
998 ( 'foreign
', 'LA
'), ( 'foreign
', 'LB
'), ( 'foreign
', 'LC
'), ( 'foreign
', 'LK
'),
999 ( 'foreign
', 'LR
'), ( 'foreign
', 'LS
'), ( 'foreign
', 'LT
'), ( 'foreign
', 'LU
'),
1000 ( 'foreign
', 'LV
'), ( 'foreign
', 'LY
'), ( 'foreign
', 'MA
'), ( 'foreign
', 'MC
'),
1001 ( 'foreign
', 'MD
'), ( 'foreign
', 'ME
'), ( 'foreign
', 'MG
'), ( 'foreign
', 'MH
'),
1002 ( 'foreign
', 'MK
'), ( 'foreign
', 'ML
'), ( 'foreign
', 'MM
'), ( 'foreign
', 'MN
'),
1003 ( 'foreign
', 'MO
'), ( 'foreign
', 'MP
'), ( 'foreign
', 'MQ
'), ( 'foreign
', 'MR
'),
1004 ( 'foreign
', 'MS
'), ( 'foreign
', 'MT
'), ( 'foreign
', 'MU
'), ( 'foreign
', 'MV
'),
1005 ( 'foreign
', 'MW
'), ( 'foreign
', 'MX
'), ( 'foreign
', 'MY
'), ( 'foreign
', 'MZ
'),
1006 ( 'foreign
', 'NA
'), ( 'foreign
', 'NC
'), ( 'foreign
', 'NE
'), ( 'foreign
', 'NF
'),
1007 ( 'foreign
', 'NG
'), ( 'foreign
', 'NI
'), ( 'foreign
', 'NL
'), ( 'foreign
', 'NO
'),
1008 ( 'foreign
', 'NP
'), ( 'foreign
', 'NR
'), ( 'foreign
', 'NU
'), ( 'foreign
', 'NV
'),
1009 ( 'foreign
', 'NZ
'), ( 'foreign
', 'OM
'), ( 'foreign
', 'PA
'), ( 'foreign
', 'PE
'),
1010 ( 'foreign
', 'PF
'), ( 'foreign
', 'PG
'), ( 'foreign
', 'PH
'), ( 'foreign
', 'PK
'),
1011 ( 'foreign
', 'PL
'), ( 'foreign
', 'PM
'), ( 'foreign
', 'PN
'), ( 'foreign
', 'PR
'),
1012 ( 'foreign
', 'PS
'), ( 'foreign
', 'PT
'), ( 'foreign
', 'PW
'), ( 'foreign
', 'PY
'),
1013 ( 'foreign
', 'QA
'), ( 'foreign
', 'RE
'), ( 'foreign
', 'RO
'), ( 'foreign
', 'RU
'),
1014 ( 'foreign
', 'RW
'), ( 'foreign
', 'SA
'), ( 'foreign
', 'SB
'), ( 'foreign
', 'SC
'),
1015 ( 'foreign
', 'SD
'), ( 'foreign
', 'SE
'), ( 'foreign
', 'SG
'), ( 'foreign
', 'SH
'),
1016 ( 'foreign
', 'SI
'), ( 'foreign
', 'SJ
'), ( 'foreign
', 'SK
'), ( 'foreign
', 'SL
'),
1017 ( 'foreign
', 'SM
'), ( 'foreign
', 'SN
'), ( 'foreign
', 'SO
'), ( 'foreign
', 'SR
'),
1018 ( 'foreign
', 'ST
'), ( 'foreign
', 'SV'), ( 'foreign
', 'SY
'), ( 'foreign
', 'SZ
'),
1019 ( 'foreign
', 'TA
'), ( 'foreign
', 'TC
'), ( 'foreign
', 'TD
'), ( 'foreign
', 'TF
'),
1020 ( 'foreign
', 'TG
'), ( 'foreign
', 'TH
'), ( 'foreign
', 'TJ
'), ( 'foreign
', 'TK
'),
1021 ( 'foreign
', 'TM
'), ( 'foreign
', 'TN
'), ( 'foreign
', 'TO
'), ( 'foreign
', 'TP
'),
1022 ( 'foreign
', 'TR
'), ( 'foreign
', 'TT
'), ( 'foreign
', 'TV
'), ( 'foreign
', 'TW
'),
1023 ( 'foreign
', 'TZ
'), ( 'foreign
', 'UA
'), ( 'foreign
', 'UG
'), ( 'foreign
', 'UM
'),
1024 ( 'foreign
', 'US
'), ( 'foreign
', 'UY
'), ( 'foreign
', 'UZ
'), ( 'foreign
', 'VA
'),
1025 ( 'foreign
', 'VC
'), ( 'foreign
', 'VE
'), ( 'foreign
', 'VG
'), ( 'foreign
', 'VI
'),
1026 ( 'foreign
', 'VN
'), ( 'foreign
', 'VU
'), ( 'foreign
', 'WF
'), ( 'foreign
', 'WS
'),
1027 ( 'plfcz1
', 'DK
'), ( 'foreign
', 'XE
'), ( 'foreign
', 'XS
'), ( 'foreign
', 'XU
'),
1028 ( 'plfcz1
', 'BE
'), ( 'foreign
', 'YE
'), ( 'foreign
', 'YT
'), ( 'foreign
', 'YU
'),
1029 ( 'foreign
', 'ZA
'), ( 'foreign
', 'ZM
'), ( 'foreign
', 'ZR
'), ( 'foreign
', 'ZW
'),
1030 ( 'plfcz1
', 'DE
'), ( 'plfcz1
', 'GI
'), ( 'plfcz1
', 'GR
'), ( 'plfcz1
', 'IS
'),
1031 ( 'plfcz1
', 'EI
'), ( 'plfcz1
', 'IT
'), ( 'plfcz1
', 'LU
'), ( 'plfcz1
', 'NL
'),
1032 ( 'plfcz1
', 'NO
'), ( 'plfcz1
', 'ES
'), ( 'plfcz1
', 'SE
'), ( 'plfcz1
', 'AL
'),
1033 ( 'plfcz1
', 'AD
'), ( 'plfcz1
', 'BY
'), ( 'plfcz1
', 'BA
'), ( 'plfcz1
', 'BG
'),
1034 ( 'plfcz1
', 'EE
'), ( 'plfcz1
', 'FO
'), ( 'plfcz1
', 'GL
'), ( 'plfcz1
', 'GB
'),
1035 ( 'plfcz1
', 'HR
'), ( 'plfcz1
', 'LV
'), ( 'plfcz1
', 'LT
'), ( 'plfcz1
', 'MT
'),
1036 ( 'plfcz1
', 'MK
'), ( 'plfcz1
', 'MD
'), ( 'plfcz1
', 'MC
'), ( 'plfcz1
', 'AT
'),
1037 ( 'plfcz1
', 'PL
'), ( 'plfcz1
', 'PT
'), ( 'plfcz1
', 'RO
'), ( 'plfcz1
', 'RU
'),
1038 ( 'plfcz1
', 'SM
'), ( 'plfcz1
', 'XS
'), ( 'plfcz1
', 'SK
'), ( 'plfcz1
', 'SI
'),
1039 ( 'plfcz1
', 'CZ
'), ( 'plfcz1
', 'TR
'), ( 'plfcz1
', 'UA
'), ( 'plfcz1
', 'HU
'),
1040 ( 'plfcz1
', 'VA
'), ( 'plfcz1
', 'CY
'), ( 'plfcz2
', 'AF
'), ( 'plfcz2
', 'DZ
'),
1041 ( 'plfcz2
', 'AS
'), ( 'plfcz2
', 'AO
'), ( 'plfcz2
', 'AI
'), ( 'plfcz2
', 'AQ
'),
1042 ( 'plfcz2
', 'AG
'), ( 'plfcz2
', 'AR
'), ( 'plfcz2
', 'AM
'), ( 'plfcz2
', 'AW
'),
1043 ( 'plfcz2
', 'AU
'), ( 'plfcz2
', 'AZ
'), ( 'plfcz2
', 'AP
'), ( 'plfcz2
', 'BS
'),
1044 ( 'plfcz2
', 'BH
'), ( 'plfcz2
', 'BD
'), ( 'plfcz2
', 'BB'), ( 'plfcz2
', 'BZ
'),
1045 ( 'plfcz2
', 'BJ
'), ( 'plfcz2
', 'BM
'), ( 'plfcz2
', 'BT
'), ( 'plfcz2
', 'BO
'),
1046 ( 'plfcz2
', 'BW
'), ( 'plfcz2
', 'BV
'), ( 'plfcz2
', 'BR
'), ( 'plfcz2
', 'IO
'),
1047 ( 'plfcz2
', 'VG
'), ( 'plfcz2
', 'BN
'), ( 'plfcz2
', 'BF
'), ( 'plfcz2
', 'BI
'),
1048 ( 'plfcz2
', 'KH
'), ( 'plfcz2
', 'CM
'), ( 'plfcz2
', 'CA
'), ( 'plfcz2
', 'CV
'),
1049 ( 'plfcz2
', 'KY
'), ( 'plfcz2
', 'CF
'), ( 'plfcz2
', 'TD
'), ( 'plfcz2
', 'CL
'),
1050 ( 'plfcz2
', 'CN
'), ( 'plfcz2
', 'CX
'), ( 'plfcz2
', 'CC
'), ( 'plfcz2
', 'CO
'),
1051 ( 'plfcz2
', 'KM
'), ( 'plfcz2
', 'CG
'), ( 'plfcz2
', 'CD
'), ( 'plfcz2
', 'CK
'),
1052 ( 'plfcz2
', 'CR
'), ( 'plfcz2
', 'CI
'), ( 'plfcz2
', 'CU
'), ( 'plfcz2
', 'DJ
'),
1053 ( 'plfcz2
', 'DM
'), ( 'plfcz2
', 'DO
'), ( 'plfcz2
', 'TP
'), ( 'plfcz2
', 'EC
'),
1054 ( 'plfcz2
', 'EG
'), ( 'plfcz2
', 'SV'), ( 'plfcz2
', 'GQ
'), ( 'plfcz2
', 'ER
'),
1055 ( 'plfcz2
', 'ET
'), ( 'plfcz2
', 'FK
'), ( 'plfcz2
', 'FJ
'), ( 'plfcz2
', 'FX
'),
1056 ( 'plfcz2
', 'GF
'), ( 'plfcz2
', 'PF
'), ( 'plfcz2
', 'TA
'), ( 'plfcz2
', 'TF
'),
1057 ( 'plfcz2
', 'GA
'), ( 'plfcz2
', 'GM
'), ( 'plfcz2
', 'GE
'), ( 'plfcz2
', 'GH
'),
1058 ( 'plfcz2
', 'GD
'), ( 'plfcz2
', 'GP
'), ( 'plfcz2
', 'GU
'), ( 'plfcz2
', 'GT
'),
1059 ( 'plfcz2
', 'GN
'), ( 'plfcz2
', 'GW
'), ( 'plfcz2
', 'GY
'), ( 'plfcz2
', 'HT
'),
1060 ( 'plfcz2
', 'HM
'), ( 'plfcz2
', 'HN
'), ( 'plfcz2
', 'HK
'), ( 'plfcz2
', 'IN
'),
1061 ( 'plfcz2
', 'ID
'), ( 'plfcz2
', 'IR
'), ( 'plfcz2
', 'IQ
'), ( 'plfcz2
', 'IE
'),
1062 ( 'plfcz2
', 'IL
'), ( 'plfcz2
', 'JM
'), ( 'plfcz2
', 'JP
'), ( 'plfcz2
', 'JO
'),
1063 ( 'plfcz2
', 'KZ
'), ( 'plfcz2
', 'KE
'), ( 'plfcz2
', 'KI
'), ( 'plfcz2
', 'KP
'),
1064 ( 'plfcz2
', 'KW
'), ( 'plfcz2
', 'KG
'), ( 'plfcz2
', 'LA
'), ( 'plfcz2
', 'LB
'),
1065 ( 'plfcz2
', 'LS
'), ( 'plfcz2
', 'LR
'), ( 'plfcz2
', 'LY
'), ( 'plfcz2
', 'MO
'),
1066 ( 'plfcz2
', 'MG
'), ( 'plfcz2
', 'ME
'), ( 'plfcz2
', 'MW
'), ( 'plfcz2
', 'MY
'),
1067 ( 'plfcz2
', 'MV
'), ( 'plfcz2
', 'ML
'), ( 'plfcz2
', 'MH
'), ( 'plfcz2
', 'MQ
'),
1068 ( 'plfcz2
', 'MR
'), ( 'plfcz2
', 'MU
'), ( 'plfcz2
', 'YT
'), ( 'plfcz2
', 'MX
'),
1069 ( 'plfcz2
', 'FM
'), ( 'plfcz2
', 'MN
'), ( 'plfcz2
', 'MS
'), ( 'plfcz2
', 'MA
'),
1070 ( 'plfcz2
', 'MZ
'), ( 'plfcz2
', 'MM
'), ( 'plfcz2
', 'NA
'), ( 'plfcz2
', 'NR
'),
1071 ( 'plfcz2
', 'NP
'), ( 'plfcz2
', 'AN
'), ( 'plfcz2
', 'NC
'), ( 'plfcz2
', 'NZ
'),
1072 ( 'plfcz2
', 'NI
'), ( 'plfcz2
', 'NE
'), ( 'plfcz2
', 'NG
'), ( 'plfcz2
', 'NU
'),
1073 ( 'plfcz2
', 'NF
'), ( 'plfcz2
', 'MP
'), ( 'plfcz2
', 'OM
'), ( 'plfcz2
', 'PK
'),
1074 ( 'plfcz2
', 'PW
'), ( 'plfcz2
', 'PS
'), ( 'plfcz2
', 'PA
'), ( 'plfcz2
', 'PG
'),
1075 ( 'plfcz2
', 'PY
'), ( 'plfcz2
', 'PE
'), ( 'plfcz2
', 'PH
'), ( 'plfcz2
', 'PN
'),
1076 ( 'plfcz2
', 'PR
'), ( 'plfcz2
', 'QA
'), ( 'plfcz2
', 'RE
'), ( 'plfcz2
', 'RW
'),
1077 ( 'plfcz2
', 'KN
'), ( 'plfcz2
', 'ST
'), ( 'plfcz2
', 'SA
'), ( 'plfcz2
', 'SN
'),
1078 ( 'plfcz2
', 'SC
'), ( 'plfcz2
', 'SL
'), ( 'plfcz2
', 'SG
'), ( 'plfcz2
', 'SB
'),
1079 ( 'plfcz2
', 'SO
'), ( 'plfcz2
', 'ZA
'), ( 'plfcz2
', 'GS
'), ( 'plfcz2
', 'KR
'),
1080 ( 'plfcz2
', 'LK
'), ( 'plfcz2
', 'NV
'), ( 'plfcz2
', 'SH
'), ( 'plfcz2
', 'LC
'),
1081 ( 'plfcz2
', 'PM
'), ( 'plfcz2
', 'VC
'), ( 'plfcz2
', 'SD
'), ( 'plfcz2
', 'SR
'),
1082 ( 'plfcz2
', 'SJ
'), ( 'plfcz2
', 'SZ
'), ( 'plfcz2
', 'SY
'), ( 'plfcz2
', 'TW
'),
1083 ( 'plfcz2
', 'TJ
'), ( 'plfcz2
', 'TZ
'), ( 'plfcz2
', 'TH
'), ( 'plfcz2
', 'TG
'),
1084 ( 'plfcz2
', 'TK
'), ( 'plfcz2
', 'TO
'), ( 'plfcz2
', 'TT
'), ( 'plfcz2
', 'XU
'),
1085 ( 'plfcz2
', 'TN
'), ( 'plfcz2
', 'TM
'), ( 'plfcz2
', 'TC
'), ( 'plfcz2
', 'TV
'),
1086 ( 'plfcz2
', 'UG
'), ( 'plfcz2
', 'AE
'), ( 'plfcz2
', 'US
'), ( 'plfcz2
', 'UM
'),
1087 ( 'plfcz2
', 'UY
'), ( 'plfcz2
', 'UZ
'), ( 'plfcz2
', 'VU
'), ( 'plfcz2
', 'VE
'),
1088 ( 'plfcz2
', 'VN
'), ( 'plfcz2
', 'VI
'), ( 'plfcz2
', 'WF
'), ( 'plfcz2
', 'EH
'),
1089 ( 'plfcz2
', 'WS
'), ( 'plfcz2
', 'YE
'), ( 'plfcz2
', 'YU
'), ( 'plfcz2
', 'ZR
'),
1090 ( 'plfcz2
', 'ZM
'), ( 'plfcz2
', 'ZW
'), ( 'ppfcz1
', 'AT
'), ( 'ppfcz1
', 'BE
'),
1091 ( 'ppfcz1
', 'DE
'), ( 'ppfcz1
', 'FR
'), ( 'ppfcz1
', 'FX
'), ( 'ppfcz1
', 'IT
'),
1092 ( 'ppfcz1
', 'LU
'), ( 'ppfcz1
', 'MC
'), ( 'ppfcz1
', 'NL
'), ( 'ppfcz1
', 'SM
'),
1093 ( 'ppfcz1
', 'VA
'), ( 'ppfcz1
', 'XE
'), ( 'ppfcz2
', 'AD
'), ( 'ppfcz2
', 'AL
'),
1094 ( 'ppfcz2
', 'BA
'), ( 'ppfcz2
', 'BG
'), ( 'ppfcz2
', 'BY
'), ( 'ppfcz2
', 'CY
'),
1095 ( 'ppfcz2
', 'CZ
'), ( 'ppfcz2
', 'DK
'), ( 'ppfcz2
', 'EE
'), ( 'ppfcz2
', 'EI
'),
1096 ( 'ppfcz2
', 'ES
'), ( 'ppfcz2
', 'FI
'), ( 'ppfcz2
', 'FO
'), ( 'ppfcz2
', 'GB
'),
1097 ( 'ppfcz2
', 'GI
'), ( 'ppfcz2
', 'GL
'), ( 'ppfcz2
', 'GR
'), ( 'ppfcz2
', 'HR
'),
1098 ( 'ppfcz2
', 'HU
'), ( 'ppfcz2
', 'IE
'), ( 'ppfcz2
', 'IS
'), ( 'ppfcz2
', 'LT
'),
1099 ( 'ppfcz2
', 'LV
'), ( 'ppfcz2
', 'MD
'), ( 'ppfcz2
', 'MK
'), ( 'ppfcz2
', 'MT
'),
1100 ( 'ppfcz2
', 'NO
'), ( 'ppfcz2
', 'PL
'), ( 'ppfcz2
', 'PT
'), ( 'ppfcz2
', 'RO
'),
1101 ( 'ppfcz2
', 'RU
'), ( 'ppfcz2
', 'SE
'), ( 'ppfcz2
', 'SI
'), ( 'ppfcz2
', 'SK
'),
1102 ( 'ppfcz2
', 'TR
'), ( 'ppfcz2
', 'UA
'), ( 'ppfcz2
', 'XS
'), ( 'ppfcz2
', 'YU
'),
1103 ( 'ppfcz3
', 'CA
'), ( 'ppfcz3
', 'DZ
'), ( 'ppfcz3
', 'EG
'), ( 'ppfcz3
', 'IL
'),
1104 ( 'ppfcz3
', 'JO
'), ( 'ppfcz3
', 'LB
'), ( 'ppfcz3
', 'LY
'), ( 'ppfcz3
', 'MA
'),
1105 ( 'ppfcz3
', 'MX
'), ( 'ppfcz3
', 'PM
'), ( 'ppfcz3
', 'SY
'), ( 'ppfcz3
', 'TN
'),
1106 ( 'ppfcz3
', 'US
'), ( 'ppfcz4
', 'AE
'), ( 'ppfcz4
', 'AF
'), ( 'ppfcz4
', 'AM
'),
1107 ( 'ppfcz4
', 'AO
'), ( 'ppfcz4
', 'AZ
'), ( 'ppfcz4
', 'BD
'), ( 'ppfcz4
', 'BF
'),
1108 ( 'ppfcz4
', 'BH
'), ( 'ppfcz4
', 'BI
'), ( 'ppfcz4
', 'BJ
'), ( 'ppfcz4
', 'BT
'),
1109 ( 'ppfcz4
', 'BV
'), ( 'ppfcz4
', 'BW
'), ( 'ppfcz4
', 'CF
'), ( 'ppfcz4
', 'CG
'),
1110 ( 'ppfcz4
', 'CI
'), ( 'ppfcz4
', 'CM
'), ( 'ppfcz4
', 'CN
'), ( 'ppfcz4
', 'DJ
'),
1111 ( 'ppfcz4
', 'DO
'), ( 'ppfcz4
', 'ER
'), ( 'ppfcz4
', 'ET
'), ( 'ppfcz4
', 'GA
'),
1112 ( 'ppfcz4
', 'GE
'), ( 'ppfcz4
', 'GH
'), ( 'ppfcz4
', 'GM
'), ( 'ppfcz4
', 'GN
'),
1113 ( 'ppfcz4
', 'GQ
'), ( 'ppfcz4
', 'GW
'), ( 'ppfcz4
', 'HK
'), ( 'ppfcz4
', 'IN
'),
1114 ( 'ppfcz4
', 'IQ
'), ( 'ppfcz4
', 'IR
'), ( 'ppfcz4
', 'JP
'), ( 'ppfcz4
', 'KE
'),
1115 ( 'ppfcz4
', 'KG
'), ( 'ppfcz4
', 'KH
'), ( 'ppfcz4
', 'KP
'), ( 'ppfcz4
', 'KW
'),
1116 ( 'ppfcz4
', 'KZ
'), ( 'ppfcz4
', 'LA
'), ( 'ppfcz4
', 'LK
'), ( 'ppfcz4
', 'LR
'),
1117 ( 'ppfcz4
', 'LS
'), ( 'ppfcz4
', 'MG
'), ( 'ppfcz4
', 'ML
'), ( 'ppfcz4
', 'MM
'),
1118 ( 'ppfcz4
', 'MN
'), ( 'ppfcz4
', 'MO
'), ( 'ppfcz4
', 'MR
'), ( 'ppfcz4
', 'MU
'),
1119 ( 'ppfcz4
', 'MV
'), ( 'ppfcz4
', 'MW
'), ( 'ppfcz4
', 'MY
'), ( 'ppfcz4
', 'MZ
'),
1120 ( 'ppfcz4
', 'NA
'), ( 'ppfcz4
', 'NE
'), ( 'ppfcz4
', 'NG
'), ( 'ppfcz4
', 'NP
'),
1121 ( 'ppfcz4
', 'OM
'), ( 'ppfcz4
', 'PK
'), ( 'ppfcz4
', 'QA
'), ( 'ppfcz4
', 'RE
'),
1122 ( 'ppfcz4
', 'RW
'), ( 'ppfcz4
', 'SA
'), ( 'ppfcz4
', 'SC
'), ( 'ppfcz4
', 'SD
'),
1123 ( 'ppfcz4
', 'SG
'), ( 'ppfcz4
', 'SH
'), ( 'ppfcz4
', 'SL
'), ( 'ppfcz4
', 'SN
'),
1124 ( 'ppfcz4
', 'SO
'), ( 'ppfcz4
', 'SZ
'), ( 'ppfcz4
', 'TD
'), ( 'ppfcz4
', 'TG
'),
1125 ( 'ppfcz4
', 'TH
'), ( 'ppfcz4
', 'TJ
'), ( 'ppfcz4
', 'TM
'), ( 'ppfcz4
', 'TW
'),
1126 ( 'ppfcz4
', 'TZ
'), ( 'ppfcz4
', 'UG
'), ( 'ppfcz4
', 'UZ
'), ( 'ppfcz4
', 'VN
'),
1127 ( 'ppfcz4
', 'XU
'), ( 'ppfcz4
', 'YT
'), ( 'ppfcz4
', 'ZA
'), ( 'ppfcz4
', 'ZW
'),
1128 ( 'ppfcz5
', 'AG
'), ( 'ppfcz5
', 'AI
'), ( 'ppfcz5
', 'AN
'), ( 'ppfcz5
', 'AP
'),
1129 ( 'ppfcz5
', 'AQ
'), ( 'ppfcz5
', 'AR
'), ( 'ppfcz5
', 'AS
'), ( 'ppfcz5
', 'AU
'),
1130 ( 'ppfcz5
', 'AW
'), ( 'ppfcz5
', 'BB'), ( 'ppfcz5
', 'BM
'), ( 'ppfcz5
', 'BN
'),
1131 ( 'ppfcz5
', 'BO
'), ( 'ppfcz5
', 'BR
'), ( 'ppfcz5
', 'BS
'), ( 'ppfcz5
', 'BZ
'),
1132 ( 'ppfcz5
', 'CC
'), ( 'ppfcz5
', 'CD
'), ( 'ppfcz5
', 'CK
'), ( 'ppfcz5
', 'CL
'),
1133 ( 'ppfcz5
', 'CO
'), ( 'ppfcz5
', 'CR
'), ( 'ppfcz5
', 'CU
'), ( 'ppfcz5
', 'CV
'),
1134 ( 'ppfcz5
', 'CX
'), ( 'ppfcz5
', 'DM
'), ( 'ppfcz5
', 'EC
'), ( 'ppfcz5
', 'EH
'),
1135 ( 'ppfcz5
', 'FJ
'), ( 'ppfcz5
', 'FK
'), ( 'ppfcz5
', 'FM
'), ( 'ppfcz5
', 'GD
'),
1136 ( 'ppfcz5
', 'GF
'), ( 'ppfcz5
', 'GP
'), ( 'ppfcz5
', 'GS
'), ( 'ppfcz5
', 'GT
'),
1137 ( 'ppfcz5
', 'GU
'), ( 'ppfcz5
', 'GY
'), ( 'ppfcz5
', 'HM
'), ( 'ppfcz5
', 'HN
'),
1138 ( 'ppfcz5
', 'HT
'), ( 'ppfcz5
', 'ID
'), ( 'ppfcz5
', 'IO
'), ( 'ppfcz5
', 'JM
'),
1139 ( 'ppfcz5
', 'KI
'), ( 'ppfcz5
', 'KM
'), ( 'ppfcz5
', 'KN
'), ( 'ppfcz5
', 'KR
'),
1140 ( 'ppfcz5
', 'KY
'), ( 'ppfcz5
', 'LC
'), ( 'ppfcz5
', 'ME
'), ( 'ppfcz5
', 'MH
'),
1141 ( 'ppfcz5
', 'MP
'), ( 'ppfcz5
', 'MQ
'), ( 'ppfcz5
', 'MS
'), ( 'ppfcz5
', 'NC
'),
1142 ( 'ppfcz5
', 'NF
'), ( 'ppfcz5
', 'NI
'), ( 'ppfcz5
', 'NR
'), ( 'ppfcz5
', 'NU
'),
1143 ( 'ppfcz5
', 'NZ
'), ( 'ppfcz5
', 'PA
'), ( 'ppfcz5
', 'PE
'), ( 'ppfcz5
', 'PF
'),
1144 ( 'ppfcz5
', 'PG
'), ( 'ppfcz5
', 'PH
'), ( 'ppfcz5
', 'PN
'), ( 'ppfcz5
', 'PR
'),
1145 ( 'ppfcz5
', 'PS
'), ( 'ppfcz5
', 'PW
'), ( 'ppfcz5
', 'PY
'), ( 'ppfcz5
', 'SB
'),
1146 ( 'ppfcz5
', 'SJ
'), ( 'ppfcz5
', 'SR
'), ( 'ppfcz5
', 'ST
'), ( 'ppfcz5
', 'SV'),
1147 ( 'ppfcz5
', 'TA
'), ( 'ppfcz5
', 'TC
'), ( 'ppfcz5
', 'TF
'), ( 'ppfcz5
', 'TK
'),
1148 ( 'ppfcz5
', 'TO
'), ( 'ppfcz5
', 'TP
'), ( 'ppfcz5
', 'TT
'), ( 'ppfcz5
', 'TV
'),
1149 ( 'ppfcz5
', 'UM
'), ( 'ppfcz5
', 'UY
'), ( 'ppfcz5
', 'VC
'), ( 'ppfcz5
', 'VE
'),
1150 ( 'ppfcz5
', 'VG
'), ( 'ppfcz5
', 'VI
'), ( 'ppfcz5
', 'VU
'), ( 'ppfcz5
', 'WF
'),
1151 ( 'ppfcz5
', 'WS
'), ( 'ppfcz5
', 'YE
'), ( 'ppfcz5
', 'ZM
'), ( 'ppfcz5
', 'ZR
');
1153 INSERT INTO t2 (a, b, c, d) VALUES
1154 ('domestic
', 26, 0.25, 4.7), ('domestic
', 27, 0.25, 6),
1155 ('domestic
', 19, 2, 6.3), ('domestic
', 19, 5, 7.77),
1156 ('domestic
', 19, 10, 10.3), ('domestic
', 19, 20, 14.83),
1157 ('domestic
', 19, 30, 20.88), ('domestic
', 20, 2, 7.3),
1158 ('domestic
', 20, 5, 8.77), ('domestic
', 20, 10, 11.3),
1159 ('domestic
', 20, 20, 15.83), ('domestic
', 20, 30, 21.88),
1160 ('domestic
', 23, 2, 18.8), ('domestic
', 23, 5, 20.8),
1161 ('domestic
', 23, 10, 24.8), ('domestic
', 23, 20, 27.8),
1162 ('domestic
', 23, 30, 30.8), ('domestic
', 24, 2, 21.1405),
1163 ('domestic
', 24, 5, 22.3705), ('domestic
', 24, 10, 25.0905),
1164 ('domestic
', 24, 20, 29.7705), ('domestic
', 24, 30, 35.9605),
1165 ('domestic
', 17, 2, 7.2), ('domestic
', 17, 5, 8.43),
1166 ('domestic
', 17, 10, 11.15), ('domestic
', 17, 20, 15.83),
1167 ('domestic
', 17, 30, 22.02), ('domestic
', 18, 2, 8.2),
1168 ('domestic
', 18, 5, 9.43), ('domestic
', 18, 10, 12.15),
1169 ('domestic
', 18, 20, 16.83), ('domestic
', 18, 30, 23.02),
1170 ('domestic
', 28, 2, 17), ('domestic
', 28, 5, 19),
1171 ('domestic
', 28, 10, 22), ('domestic
', 28, 20, 28),
1172 ('domestic
', 28, 30, 35), ('domestic
', 29, 30, 29.5),
1173 ('foreign
', 25, 200, 0), ('domestic
', 3, 100, 59),
1174 ('foreign
', 10, 30, 0), ('foreign
', 22, 0, 0),
1175 ('foreign
', 11, 30, 0), ('foreign
', 12, 30, 0),
1176 ('all
', 1, 10000, 0), ('all
', 2, 10000, 0),
1177 ('domestic
', 9, 10000, 0), ('domestic
', 4, 500, 0),
1178 ('domestic
', 5, 500, 0), ('domestic
', 6, 500, 0),
1179 ('domestic
', 7, 500, 0), ('domestic
', 8, 500, 0),
1180 ('domestic
', 21, 3.9, 10.8), ('domestic
', 21, 4.9, 12.2),
1181 ('domestic
', 21, 9.9, 15.3), ('domestic
', 21, 19.9, 20.6),
1182 ('domestic
', 21, 30, 28.1), ('plfcz1
', 16, 0.5, 19),
1183 ('plfcz2
', 16, 0.5, 25), ( 'ppfcz2
', 15, 16, 76.5),
1184 ( 'ppfcz2
', 15, 15, 75.5), ( 'ppfcz2
', 15, 14, 73.5),
1185 ( 'ppfcz2
', 15, 13, 71.5), ( 'ppfcz2
', 15, 12, 69.5),
1186 ( 'ppfcz2
', 15, 11, 67.5), ( 'ppfcz2
', 15, 10, 65.5),
1187 ( 'ppfcz2
', 15, 9, 62.5), ( 'ppfcz2
', 15, 8, 59.5),
1188 ( 'ppfcz2
', 15, 7, 56.5), ( 'ppfcz2
', 15, 6, 53.5),
1189 ( 'ppfcz2
', 15, 5, 50.5), ( 'ppfcz2
', 15, 4, 46.5),
1190 ( 'ppfcz2
', 15, 3, 42.5), ( 'ppfcz2
', 15, 2, 38.5),
1191 ('ppfcz1
', 15, 2, 33.5), ('ppfcz1
', 15, 3, 36.5),
1192 ('ppfcz1
', 15, 4, 39.5), ('ppfcz1
', 15, 5, 41.5),
1193 ('ppfcz1
', 15, 6, 42.5), ('ppfcz1
', 15, 7, 43.5),
1194 ('ppfcz1
', 15, 8, 44.5), ('ppfcz1
', 15, 9, 45.5),
1195 ('ppfcz1
', 15, 10, 46.5), ('ppfcz1
', 15, 11, 47.5),
1196 ( 'ppfcz1
', 15, 12, 48.5), ( 'ppfcz1
', 15, 13, 49.5), ( 'ppfcz1
', 15, 14, 50.5),
1197 ( 'ppfcz1
', 15, 15, 51.5), ( 'ppfcz1
', 15, 16, 52.5), ( 'ppfcz1
', 15, 17, 53.5),
1198 ( 'ppfcz1
', 15, 18, 54.5), ( 'ppfcz1
', 15, 19, 55.5), ( 'ppfcz1
', 15, 20, 56.5),
1199 ( 'ppfcz1
', 15, 21, 57.5), ( 'ppfcz1
', 15, 22, 58.5), ( 'ppfcz1
', 15, 23, 59.5),
1200 ( 'ppfcz1
', 15, 24, 60.5), ( 'ppfcz1
', 15, 25, 61.5), ( 'ppfcz1
', 15, 26, 62.5),
1201 ( 'ppfcz1
', 15, 27, 63.5), ( 'ppfcz1
', 15, 28, 64.5), ( 'ppfcz1
', 15, 29, 65.5),
1202 ( 'ppfcz1
', 15, 30, 66.5), ( 'ppfcz2
', 15, 17, 77.5), ( 'ppfcz2
', 15, 18, 78.5),
1203 ( 'ppfcz2
', 15, 19, 79.5), ( 'ppfcz2
', 15, 20, 80.5), ( 'ppfcz2
', 15, 21, 81.5),
1204 ( 'ppfcz2
', 15, 22, 82.5), ( 'ppfcz2
', 15, 23, 83.5), ( 'ppfcz2
', 15, 24, 84.5),
1205 ( 'ppfcz2
', 15, 25, 85.5), ( 'ppfcz2
', 15, 26, 86.5), ( 'ppfcz2
', 15, 27, 87.5),
1206 ( 'ppfcz2
', 15, 28, 88.5), ( 'ppfcz2
', 15, 29, 89.5), ( 'ppfcz2
', 15, 30, 90.5),
1207 ( 'ppfcz3
', 15, 2, 39.5), ( 'ppfcz3
', 15, 3, 45.5), ( 'ppfcz3
', 15, 4, 51.5),
1208 ( 'ppfcz3
', 15, 5, 57.5), ( 'ppfcz3
', 15, 6, 63.5), ( 'ppfcz3
', 15, 7, 69.5),
1209 ( 'ppfcz3
', 15, 8, 75.5), ( 'ppfcz3
', 15, 9, 81.5), ( 'ppfcz3
', 15, 10, 87.5),
1210 ( 'ppfcz3
', 15, 11, 93.5), ( 'ppfcz3
', 15, 12, 99.5), ( 'ppfcz3
', 15, 13, 105.5),
1211 ( 'ppfcz3
', 15, 14, 111.5), ( 'ppfcz3
', 15, 15, 117.5), ( 'ppfcz3
', 15, 16, 122.5),
1212 ( 'ppfcz3
', 15, 17, 127.5), ( 'ppfcz3
', 15, 18, 132.5), ( 'ppfcz3
', 15, 19, 137.5),
1213 ( 'ppfcz3
', 15, 20, 142.5), ( 'ppfcz3
', 15, 21, 146.5), ( 'ppfcz3
', 15, 22, 150.5),
1214 ( 'ppfcz3
', 15, 23, 154.5), ( 'ppfcz3
', 15, 24, 158.5), ( 'ppfcz3
', 15, 25, 162.5),
1215 ( 'ppfcz3
', 15, 26, 166.5), ( 'ppfcz3
', 15, 27, 170.5), ( 'ppfcz3
', 15, 28, 174.5),
1216 ( 'ppfcz3
', 15, 29, 178.5), ( 'ppfcz3
', 15, 30, 182.5), ( 'ppfcz4
', 15, 2, 44.5),
1217 ( 'ppfcz4
', 15, 3, 51.5), ( 'ppfcz4
', 15, 4, 58.5), ( 'ppfcz4
', 15, 5, 65.5),
1218 ( 'ppfcz4
', 15, 6, 72.5), ( 'ppfcz4
', 15, 7, 79.5), ( 'ppfcz4
', 15, 8, 86.5),
1219 ( 'ppfcz4
', 15, 9, 93.5), ( 'ppfcz4
', 15, 10, 100.5), ( 'ppfcz4
', 15, 11, 105.5),
1220 ( 'ppfcz4
', 15, 12, 110.5), ( 'ppfcz4
', 15, 13, 115.5), ( 'ppfcz4
', 15, 14, 120.5),
1221 ( 'ppfcz4
', 15, 15, 125.5), ( 'ppfcz4
', 15, 16, 130.5), ( 'ppfcz4
', 15, 17, 135.5),
1222 ( 'ppfcz4
', 15, 18, 140.5), ( 'ppfcz4
', 15, 19, 145.5), ( 'ppfcz4
', 15, 20, 150.5),
1223 ( 'ppfcz4
', 15, 21, 154.5), ( 'ppfcz4
', 15, 22, 158.5), ( 'ppfcz4
', 15, 23, 162.5),
1224 ( 'ppfcz4
', 15, 24, 166.5), ( 'ppfcz4
', 15, 25, 170.5), ( 'ppfcz4
', 15, 26, 174.5),
1225 ( 'ppfcz4
', 15, 27, 178.5), ( 'ppfcz4
', 15, 28, 182.5), ( 'ppfcz4
', 15, 29, 186.5),
1226 ( 'ppfcz4
', 15, 30, 190.5), ( 'ppfcz5
', 15, 2, 48.5), ( 'ppfcz5
', 15, 3, 56.5),
1227 ( 'ppfcz5
', 15, 4, 64.5), ( 'ppfcz5
', 15, 5, 72.5), ( 'ppfcz5
', 15, 6, 80.5),
1228 ( 'ppfcz5
', 15, 7, 88.5), ( 'ppfcz5
', 15, 8, 96.5), ( 'ppfcz5
', 15, 9, 104.5),
1229 ( 'ppfcz5
', 15, 10, 112.5), ( 'ppfcz5
', 15, 11, 119.5), ( 'ppfcz5
', 15, 12, 126.5),
1230 ( 'ppfcz5
', 15, 13, 133.5), ( 'ppfcz5
', 15, 14, 140.5), ( 'ppfcz5
', 15, 15, 147.5),
1231 ( 'ppfcz5
', 15, 16, 153.5), ( 'ppfcz5
', 15, 17, 161.5), ( 'ppfcz5
', 15, 18, 167.5),
1232 ( 'ppfcz5
', 15, 19, 173.5), ( 'ppfcz5
', 15, 20, 179.5), ( 'ppfcz5
', 15, 21, 185.5),
1233 ( 'ppfcz5
', 15, 22, 191.5), ( 'ppfcz5
', 15, 23, 197.5), ( 'ppfcz5
', 15, 24, 203.5),
1234 ( 'ppfcz5
', 15, 25, 207.5), ( 'ppfcz5
', 15, 26, 212.5), ( 'ppfcz5
', 15, 27, 217.5),
1235 ( 'ppfcz5
', 15, 28, 222.5), ( 'ppfcz5
', 15, 29, 227.5), ( 'ppfcz5
', 15, 30, 232.5),
1236 ( 'ppfcz1
', 14, 2, 37.5), ( 'ppfcz1
', 14, 3, 41.5), ( 'ppfcz1
', 14, 4, 45.5),
1237 ( 'ppfcz1
', 14, 5, 48.5), ( 'ppfcz1
', 14, 6, 52.5), ( 'ppfcz1
', 14, 7, 55.5),
1238 ( 'ppfcz1
', 14, 8, 57.5), ( 'ppfcz1
', 14, 9, 59.5), ( 'ppfcz1
', 14, 10, 61.5),
1239 ( 'ppfcz1
', 14, 11, 62.5), ( 'ppfcz1
', 14, 12, 63.5), ( 'ppfcz1
', 14, 13, 64.5),
1240 ( 'ppfcz1
', 14, 14, 65.5), ( 'ppfcz1
', 14, 15, 66.5), ( 'ppfcz1
', 14, 16, 67.5),
1241 ( 'ppfcz1
', 14, 17, 68.5), ( 'ppfcz1
', 14, 18, 69.5), ( 'ppfcz1
', 14, 19, 70.5),
1242 ( 'ppfcz1
', 14, 20, 71.5), ( 'ppfcz1
', 14, 21, 72.5), ( 'ppfcz1
', 14, 22, 73.5),
1243 ( 'ppfcz1
', 14, 23, 74.5), ( 'ppfcz1
', 14, 24, 75.5), ( 'ppfcz1
', 14, 25, 76.5),
1244 ( 'ppfcz1
', 14, 26, 77.5), ( 'ppfcz1
', 14, 27, 78.5), ( 'ppfcz1
', 14, 28, 79.5),
1245 ( 'ppfcz1
', 14, 29, 80.5), ( 'ppfcz1
', 14, 30, 81.5), ( 'ppfcz2
', 14, 2, 43.5),
1246 ( 'ppfcz2
', 14, 3, 48.5), ( 'ppfcz2
', 14, 4, 53.5), ( 'ppfcz2
', 14, 5, 57.5),
1247 ( 'ppfcz2
', 14, 6, 61.5), ( 'ppfcz2
', 14, 7, 65.5), ( 'ppfcz2
', 14, 8, 69.5),
1248 ( 'ppfcz2
', 14, 9, 73.5), ( 'ppfcz2
', 14, 10, 77.5), ( 'ppfcz2
', 14, 11, 80.5),
1249 ( 'ppfcz2
', 14, 12, 83.5), ( 'ppfcz2
', 14, 13, 86.5), ( 'ppfcz2
', 14, 14, 89.5),
1250 ( 'ppfcz2
', 14, 15, 92.5), ( 'ppfcz2
', 14, 16, 94.5), ( 'ppfcz2
', 14, 17, 96.5),
1251 ( 'ppfcz2
', 14, 18, 98.5), ( 'ppfcz2
', 14, 19, 99.5), ( 'ppfcz2
', 14, 20, 100.5),
1252 ( 'ppfcz2
', 14, 21, 101.5), ( 'ppfcz2
', 14, 22, 102.5), ( 'ppfcz2
', 14, 23, 103.5),
1253 ( 'ppfcz2
', 14, 24, 104.5), ( 'ppfcz2
', 14, 25, 105.5), ( 'ppfcz2
', 14, 26, 106.5),
1254 ( 'ppfcz2
', 14, 27, 107.5), ( 'ppfcz2
', 14, 28, 108.5), ( 'ppfcz2
', 14, 29, 109.5),
1255 ( 'ppfcz2
', 14, 30, 110.5), ( 'ppfcz3
', 14, 2, 47.5), ( 'ppfcz3
', 14, 3, 56.5),
1256 ( 'ppfcz3
', 14, 4, 67.5), ( 'ppfcz3
', 14, 5, 78.5), ( 'ppfcz3
', 14, 6, 87.5),
1257 ( 'ppfcz3
', 14, 7, 96.5), ( 'ppfcz3
', 14, 8, 105.5), ( 'ppfcz3
', 14, 9, 114.5),
1258 ( 'ppfcz3
', 14, 10, 123.5), ( 'ppfcz3
', 14, 11, 131.5), ( 'ppfcz3
', 14, 12, 139.5),
1259 ( 'ppfcz3
', 14, 13, 147.5), ( 'ppfcz3
', 14, 14, 155.5), ( 'ppfcz3
', 14, 15, 163.5),
1260 ( 'ppfcz3
', 14, 16, 171.5), ( 'ppfcz3
', 14, 17, 179.5), ( 'ppfcz3
', 14, 18, 187.5),
1261 ( 'ppfcz3
', 14, 19, 195.5), ( 'ppfcz3
', 14, 20, 203.5), ( 'ppfcz3
', 14, 21, 210.5),
1262 ( 'ppfcz3
', 14, 22, 217.5), ( 'ppfcz3
', 14, 23, 224.5), ( 'ppfcz3
', 14, 24, 231.5),
1263 ( 'ppfcz3
', 14, 25, 238.5), ( 'ppfcz3
', 14, 26, 245.5), ( 'ppfcz3
', 14, 27, 252.5),
1264 ( 'ppfcz3
', 14, 28, 259.5), ( 'ppfcz3
', 14, 29, 266.5), ( 'ppfcz3
', 14, 30, 273.5),
1265 ( 'ppfcz4
', 14, 2, 54.5), ( 'ppfcz4
', 14, 3, 68.5), ( 'ppfcz4
', 14, 4, 81.5),
1266 ( 'ppfcz4
', 14, 5, 95.5), ( 'ppfcz4
', 14, 6, 108.5), ( 'ppfcz4
', 14, 7, 121.5),
1267 ( 'ppfcz4
', 14, 8, 134.5), ( 'ppfcz4
', 14, 9, 147.5), ( 'ppfcz4
', 14, 10, 160.5),
1268 ( 'ppfcz4
', 14, 11, 168.5), ( 'ppfcz4
', 14, 12, 178.5), ( 'ppfcz4
', 14, 13, 188.5),
1269 ( 'ppfcz4
', 14, 14, 198.5), ( 'ppfcz4
', 14, 15, 208.5), ( 'ppfcz4
', 14, 16, 216.5),
1270 ( 'ppfcz4
', 14, 17, 224.5), ( 'ppfcz4
', 14, 18, 232.5), ( 'ppfcz4
', 14, 19, 240.5),
1271 ( 'ppfcz4
', 14, 20, 248.5), ( 'ppfcz4
', 14, 21, 256.5), ( 'ppfcz4
', 14, 22, 264.5),
1272 ( 'ppfcz4
', 14, 23, 272.5), ( 'ppfcz4
', 14, 24, 280.5), ( 'ppfcz4
', 14, 25, 288.5),
1273 ( 'ppfcz4
', 14, 26, 296.5), ( 'ppfcz4
', 14, 27, 304.5), ( 'ppfcz4
', 14, 28, 312.5),
1274 ( 'ppfcz4
', 14, 29, 320.5), ( 'ppfcz4
', 14, 30, 328.5), ( 'ppfcz5
', 14, 2, 66.5),
1275 ( 'ppfcz5
', 14, 3, 84.5), ( 'ppfcz5
', 14, 4, 102.5), ( 'ppfcz5
', 14, 5, 120.5),
1276 ( 'ppfcz5
', 14, 6, 137.5), ( 'ppfcz5
', 14, 7, 154.5), ( 'ppfcz5
', 14, 8, 171.5),
1277 ( 'ppfcz5
', 14, 9, 188.5), ( 'ppfcz5
', 14, 10, 205.5), ( 'ppfcz5
', 14, 11, 220.5),
1278 ( 'ppfcz5
', 14, 12, 235.5), ( 'ppfcz5
', 14, 13, 250.5), ( 'ppfcz5
', 14, 14, 265.5),
1279 ( 'ppfcz5
', 14, 15, 280.5), ( 'ppfcz5
', 14, 16, 295.5), ( 'ppfcz5
', 14, 17, 310.5),
1280 ( 'ppfcz5
', 14, 18, 325.5), ( 'ppfcz5
', 14, 19, 340.5), ( 'ppfcz5
', 14, 20, 355.5),
1281 ( 'ppfcz5
', 14, 21, 368.5), ( 'ppfcz5
', 14, 22, 381.5), ( 'ppfcz5
', 14, 23, 394.5),
1282 ( 'ppfcz5
', 14, 24, 407.5), ( 'ppfcz5
', 14, 25, 420.5), ( 'ppfcz5
', 14, 26, 433.5),
1283 ( 'ppfcz5
', 14, 27, 446.5), ( 'ppfcz5
', 14, 28, 459.5), ( 'ppfcz5
', 14, 29, 472.5),
1284 ( 'ppfcz5
', 14, 30, 485.5), ( 'ppfcz1
', 30, 0.5, 56.5), ( 'ppfcz1
', 30, 1, 63.5),
1285 ( 'ppfcz1
', 30, 1.5, 69.5), ( 'ppfcz1
', 30, 2, 75.5), ( 'ppfcz1
', 30, 2.5, 80.5),
1286 ( 'ppfcz1
', 30, 3, 86.5), ( 'ppfcz1
', 30, 3.5, 92.5), ( 'ppfcz1
', 30, 4, 99.5),
1287 ( 'ppfcz1
', 30, 4.5, 105.5), ( 'ppfcz1
', 30, 5, 111.5), ( 'ppfcz1
', 30, 6, 118.5),
1288 ( 'ppfcz1
', 30, 7, 126.5), ( 'ppfcz1
', 30, 8, 133.5), ( 'ppfcz1
', 30, 9, 141.5),
1289 ( 'ppfcz1
', 30, 10, 148.5), ( 'ppfcz1
', 30, 11, 156.5), ( 'ppfcz1
', 30, 12, 163.5),
1290 ( 'ppfcz1
', 30, 13, 171.5), ( 'ppfcz1
', 30, 14, 178.5), ( 'ppfcz1
', 30, 15, 186.5),
1291 ( 'ppfcz1
', 30, 16, 193.5), ( 'ppfcz1
', 30, 17, 201.5), ( 'ppfcz1
', 30, 18, 209.5),
1292 ( 'ppfcz1
', 30, 19, 216.5), ( 'ppfcz1
', 30, 20, 224.5), ( 'ppfcz1
', 30, 21, 231.5),
1293 ( 'ppfcz1
', 30, 22, 239.5), ( 'ppfcz1
', 30, 23, 246.5), ( 'ppfcz1
', 30, 24, 254.5),
1294 ( 'ppfcz1
', 30, 25, 261.5), ( 'ppfcz1
', 30, 26, 269.5), ( 'ppfcz1
', 30, 27, 276.5),
1295 ( 'ppfcz1
', 30, 28, 284.5), ( 'ppfcz1
', 30, 29, 291.5), ( 'ppfcz1
', 30, 30, 299.5),
1296 ( 'ppfcz2
', 30, 0.5, 61.5), ( 'ppfcz2
', 30, 1, 65.5), ( 'ppfcz2
', 30, 1.5, 75.5),
1297 ( 'ppfcz2
', 30, 2, 80.5), ( 'ppfcz2
', 30, 2.5, 86.5), ( 'ppfcz2
', 30, 3, 99.5),
1298 ( 'ppfcz2
', 30, 3.5, 109.5), ( 'ppfcz2
', 30, 4, 113.5), ( 'ppfcz2
', 30, 4.5, 121.5),
1299 ( 'ppfcz2
', 30, 5, 129.5), ( 'ppfcz2
', 30, 6, 139.5), ( 'ppfcz2
', 30, 7, 149.5),
1300 ( 'ppfcz2
', 30, 8, 159.5), ( 'ppfcz2
', 30, 9, 169.5), ( 'ppfcz2
', 30, 10, 180.5),
1301 ( 'ppfcz2
', 30, 11, 189.5), ( 'ppfcz2
', 30, 12, 199.5), ( 'ppfcz2
', 30, 13, 210.5),
1302 ( 'ppfcz2
', 30, 14, 219.5), ( 'ppfcz2
', 30, 15, 229.5), ( 'ppfcz2
', 30, 16, 240.5),
1303 ( 'ppfcz2
', 30, 17, 249.5), ( 'ppfcz2
', 30, 18, 259.5), ( 'ppfcz2
', 30, 19, 270.5),
1304 ( 'ppfcz2
', 30, 20, 280.5), ( 'ppfcz2
', 30, 21, 289.5), ( 'ppfcz2
', 30, 22, 300.5),
1305 ( 'ppfcz2
', 30, 23, 310.5), ( 'ppfcz2
', 30, 24, 320.5), ( 'ppfcz2
', 30, 25, 330.5),
1306 ( 'ppfcz2
', 30, 26, 340.5), ( 'ppfcz2
', 30, 27, 350.5), ( 'ppfcz2
', 30, 28, 360.5),
1307 ( 'ppfcz2
', 30, 29, 370.5), ( 'ppfcz2
', 30, 30, 381.5), ( 'ppfcz3
', 30, 0.5, 74.5),
1308 ( 'ppfcz3
', 30, 1, 83.5), ( 'ppfcz3
', 30, 1.5, 90.5), ( 'ppfcz3
', 30, 2, 99.5),
1309 ( 'ppfcz3
', 30, 2.5, 107.5), ( 'ppfcz3
', 30, 3, 114.5), ( 'ppfcz3
', 30, 3.5, 122.5),
1310 ( 'ppfcz3
', 30, 4, 130.5), ( 'ppfcz3
', 30, 4.5, 140.5), ( 'ppfcz3
', 30, 5, 147.5),
1311 ( 'ppfcz3
', 30, 6, 162.5), ( 'ppfcz3
', 30, 7, 174.5), ( 'ppfcz3
', 30, 8, 188.5),
1312 ( 'ppfcz3
', 30, 9, 201.5), ( 'ppfcz3
', 30, 10, 213.5), ( 'ppfcz3
', 30, 11, 227.5),
1313 ( 'ppfcz3
', 30, 12, 240.5), ( 'ppfcz3
', 30, 13, 252.5), ( 'ppfcz3
', 30, 14, 266.5),
1314 ( 'ppfcz3
', 30, 15, 278.5), ( 'ppfcz3
', 30, 16, 290.5), ( 'ppfcz3
', 30, 17, 304.5),
1315 ( 'ppfcz3
', 30, 18, 317.5), ( 'ppfcz3
', 30, 19, 330.5), ( 'ppfcz3
', 30, 20, 343.5),
1316 ( 'ppfcz3
', 30, 21, 354.5), ( 'ppfcz3
', 30, 22, 363.5), ( 'ppfcz3
', 30, 23, 375.5),
1317 ( 'ppfcz3
', 30, 24, 385.5), ( 'ppfcz3
', 30, 25, 396.5), ( 'ppfcz3
', 30, 26, 405.5),
1318 ( 'ppfcz3
', 30, 27, 417.5), ( 'ppfcz3
', 30, 28, 428.5), ( 'ppfcz3
', 30, 29, 438.5),
1319 ( 'ppfcz3
', 30, 30, 448.5), ( 'ppfcz4
', 30, 0.5, 90.5), ( 'ppfcz4
', 30, 1, 104.5),
1320 ( 'ppfcz4
', 30, 1.5, 118.5), ( 'ppfcz4
', 30, 2, 134.5), ( 'ppfcz4
', 30, 2.5, 146.5),
1321 ( 'ppfcz4
', 30, 3, 163.5), ( 'ppfcz4
', 30, 3.5, 179.5), ( 'ppfcz4
', 30, 4, 195.5),
1322 ( 'ppfcz4
', 30, 4.5, 211.5), ( 'ppfcz4
', 30, 5, 232.5), ( 'ppfcz4
', 30, 6, 257.5),
1323 ( 'ppfcz4
', 30, 7, 278.5), ( 'ppfcz4
', 30, 8, 300.5), ( 'ppfcz4
', 30, 9, 321.5),
1324 ( 'ppfcz4
', 30, 10, 343.5), ( 'ppfcz4
', 30, 11, 364.5), ( 'ppfcz4
', 30, 12, 386.5),
1325 ( 'ppfcz4
', 30, 13, 407.5), ( 'ppfcz4
', 30, 14, 429.5), ( 'ppfcz4
', 30, 15, 450.5),
1326 ( 'ppfcz4
', 30, 16, 472.5), ( 'ppfcz4
', 30, 17, 493.5), ( 'ppfcz4
', 30, 18, 515.5),
1327 ( 'ppfcz4
', 30, 19, 536.5), ( 'ppfcz4
', 30, 20, 558.5), ( 'ppfcz4
', 30, 21, 579.5),
1328 ( 'ppfcz4
', 30, 22, 601.5), ( 'ppfcz4
', 30, 23, 622.5), ( 'ppfcz4
', 30, 24, 644.5),
1329 ( 'ppfcz4
', 30, 25, 665.5), ( 'ppfcz4
', 30, 26, 687.5), ( 'ppfcz4
', 30, 27, 708.5),
1330 ( 'ppfcz4
', 30, 28, 730.5), ( 'ppfcz4
', 30, 29, 751.5), ( 'ppfcz4
', 30, 30, 773.5),
1331 ( 'ppfcz5
', 30, 0.5, 97.5), ( 'ppfcz5
', 30, 1, 114.5), ( 'ppfcz5
', 30, 1.5, 131.5),
1332 ( 'ppfcz5
', 30, 2, 148.5), ( 'ppfcz5
', 30, 2.5, 165.5), ( 'ppfcz5
', 30, 3, 183.5),
1333 ( 'ppfcz5
', 30, 3.5, 200.5), ( 'ppfcz5
', 30, 4, 221.5), ( 'ppfcz5
', 30, 4.5, 243.5),
1334 ( 'ppfcz5
', 30, 5, 264.5), ( 'ppfcz5
', 30, 6, 289.5), ( 'ppfcz5
', 30, 7, 313.5),
1335 ( 'ppfcz5
', 30, 8, 336.5), ( 'ppfcz5
', 30, 9, 360.5), ( 'ppfcz5
', 30, 10, 384.5),
1336 ( 'ppfcz5
', 30, 11, 407.5), ( 'ppfcz5
', 30, 12, 431.5), ( 'ppfcz5
', 30, 13, 455.5),
1337 ( 'ppfcz5
', 30, 14, 478.5), ( 'ppfcz5
', 30, 15, 502.5), ( 'ppfcz5
', 30, 16, 526.5),
1338 ( 'ppfcz5
', 30, 17, 549.5), ( 'ppfcz5
', 30, 18, 573.5), ( 'ppfcz5
', 30, 19, 597.5),
1339 ( 'ppfcz5
', 30, 20, 620.5), ( 'ppfcz5
', 30, 21, 644.5), ( 'ppfcz5
', 30, 22, 668.5),
1340 ( 'ppfcz5
', 30, 23, 691.5), ( 'ppfcz5
', 30, 24, 715.5), ( 'ppfcz5
', 30, 25, 738.5),
1341 ( 'ppfcz5
', 30, 26, 762.5), ( 'ppfcz5
', 30, 27, 786.5), ( 'ppfcz5
', 30, 28, 809.5),
1342 ( 'ppfcz5
', 30, 29, 833.5), ( 'ppfcz5
', 30, 30, 857.5), ( 'foreign
', 13, 30, 0),
1343 ( 'all
', 32, 10000, 23.2342007434944);
1347 INSERT INTO t3 SELECT * FROM t1;
1350 SELECT d FROM t1, t2
1351 WHERE t2.b=14 AND t2.a=t1.a AND 5.1<t2.c AND t1.b='DE
'
1352 ORDER BY t2.c LIMIT 1;
1353 SELECT d FROM t1, t2
1354 WHERE t2.b=14 AND t2.a=t1.a AND 5.1<t2.c AND t1.b='DE
'
1355 ORDER BY t2.c LIMIT 1;
1358 SELECT d FROM t3 AS t1, t2 AS t2
1359 WHERE t2.b=14 AND t2.a=t1.a AND 5.1<t2.c AND t1.b='DE
'
1360 ORDER BY t2.c LIMIT 1;
1361 SELECT d FROM t3 AS t1, t2 AS t2
1362 WHERE t2.b=14 AND t2.a=t1.a AND 5.1<t2.c AND t1.b='DE
'
1363 ORDER BY t2.c LIMIT 1;
1365 DROP TABLE t1,t2,t3;
1368 --echo # WL#1393 - Optimizing filesort with small limit
1371 CREATE TABLE t1(f0 int auto_increment primary key, f1 int, f2 varchar(200));
1372 INSERT INTO t1(f1, f2) VALUES
1373 (0,"0"),(1,"1"),(2,"2"),(3,"3"),(4,"4"),(5,"5"),
1374 (6,"6"),(7,"7"),(8,"8"),(9,"9"),(10,"10"),
1375 (11,"11"),(12,"12"),(13,"13"),(14,"14"),(15,"15"),
1376 (16,"16"),(17,"17"),(18,"18"),(19,"19"),(20,"20"),
1377 (21,"21"),(22,"22"),(23,"23"),(24,"24"),(25,"25"),
1378 (26,"26"),(27,"27"),(28,"28"),(29,"29"),(30,"30"),
1379 (31,"31"),(32,"32"),(33,"33"),(34,"34"),(35,"35"),
1380 (36,"36"),(37,"37"),(38,"38"),(39,"39"),(40,"40"),
1381 (41,"41"),(42,"42"),(43,"43"),(44,"44"),(45,"45"),
1382 (46,"46"),(47,"47"),(48,"48"),(49,"49"),(50,"50"),
1383 (51,"51"),(52,"52"),(53,"53"),(54,"54"),(55,"55"),
1384 (56,"56"),(57,"57"),(58,"58"),(59,"59"),(60,"60"),
1385 (61,"61"),(62,"62"),(63,"63"),(64,"64"),(65,"65"),
1386 (66,"66"),(67,"67"),(68,"68"),(69,"69"),(70,"70"),
1387 (71,"71"),(72,"72"),(73,"73"),(74,"74"),(75,"75"),
1388 (76,"76"),(77,"77"),(78,"78"),(79,"79"),(80,"80"),
1389 (81,"81"),(82,"82"),(83,"83"),(84,"84"),(85,"85"),
1390 (86,"86"),(87,"87"),(88,"88"),(89,"89"),(90,"90"),
1391 (91,"91"),(92,"92"),(93,"93"),(94,"94"),(95,"95"),
1392 (96,"96"),(97,"97"),(98,"98"),(99,"99");
1395 ## Test sort when source data fits in memory
1397 SELECT * FROM t1 ORDER BY f1 ASC, f0 LIMIT 100;
1398 SELECT * FROM t1 ORDER BY f1 ASC, f0 LIMIT 30;
1399 SELECT * FROM t1 ORDER BY f1 ASC, f0 LIMIT 0;
1400 SELECT * FROM t1 ORDER BY f2 DESC, f0 LIMIT 30;
1401 SELECT * FROM t1 ORDER BY f2 DESC, f0 LIMIT 0;
1402 SELECT * FROM t1 WHERE f1>10 ORDER BY f2, f0 LIMIT 20;
1403 SELECT * FROM t1 WHERE f1>10 ORDER BY f2, f0 LIMIT 0;
1404 SELECT * FROM t1 WHERE f1>10 ORDER BY f2, f0 LIMIT 10 OFFSET 10;
1405 SELECT * FROM t1 WHERE f1>10 ORDER BY f2, f0 LIMIT 0 OFFSET 10;
1408 ## Test sort when source data does not fit in memory
1409 set sort_buffer_size= 32768;
1410 CREATE TEMPORARY TABLE tmp (f1 int, f2 varchar(20));
1411 INSERT INTO tmp SELECT f1, f2 FROM t1;
1412 INSERT INTO t1(f1, f2) SELECT * FROM tmp;
1413 INSERT INTO tmp SELECT f1, f2 FROM t1;
1414 INSERT INTO t1(f1, f2) SELECT * FROM tmp;
1416 SELECT * FROM t1 ORDER BY f1 ASC, f0 LIMIT 30;
1417 SELECT * FROM t1 ORDER BY f1 ASC, f0 LIMIT 0;
1418 SELECT * FROM t1 ORDER BY f2 DESC, f0 LIMIT 30;
1419 SELECT * FROM t1 ORDER BY f2 DESC, f0 LIMIT 0;
1420 SELECT * FROM t1 WHERE f1>10 ORDER BY f2, f0 LIMIT 20;
1421 SELECT * FROM t1 WHERE f1>10 ORDER BY f2, f0 LIMIT 0;
1422 SELECT * FROM t1 WHERE f1>10 ORDER BY f2, f0 LIMIT 10 OFFSET 10;
1423 SELECT * FROM t1 WHERE f1>10 ORDER BY f2, f0 LIMIT 0 OFFSET 10;
1426 ## Test with SQL_CALC_FOUND_ROWS
1427 set sort_buffer_size= 32768;
1428 SELECT SQL_CALC_FOUND_ROWS * FROM t1
1429 ORDER BY f1, f0 LIMIT 30;
1430 SELECT FOUND_ROWS();
1432 SELECT SQL_CALC_FOUND_ROWS * FROM t1
1433 ORDER BY f1, f0 LIMIT 0;
1434 SELECT FOUND_ROWS();
1436 SELECT SQL_CALC_FOUND_ROWS * FROM t1 WHERE f1>10
1437 ORDER BY f2, f0 LIMIT 20;
1438 SELECT FOUND_ROWS();
1440 SELECT SQL_CALC_FOUND_ROWS * FROM t1 WHERE f1>10
1441 ORDER BY f2, f0 LIMIT 0;
1442 SELECT FOUND_ROWS();
1444 SELECT SQL_CALC_FOUND_ROWS * FROM t1 WHERE f1>10
1445 ORDER BY f2, f0 LIMIT 10 OFFSET 10;
1446 SELECT FOUND_ROWS();
1448 SELECT SQL_CALC_FOUND_ROWS * FROM t1 WHERE f1>10
1449 ORDER BY f2, f0 LIMIT 0 OFFSET 10;
1450 SELECT FOUND_ROWS();
1453 ## Test sorting with join
1454 ## These are re-written to use PQ during execution.
1455 set sort_buffer_size= 327680;
1457 SELECT * FROM t1 JOIN tmp on t1.f2=tmp.f2
1458 ORDER BY tmp.f1, f0 LIMIT 30;
1460 SELECT * FROM t1 JOIN tmp on t1.f2=tmp.f2
1461 ORDER BY tmp.f1, f0 LIMIT 30 OFFSET 30;
1463 SELECT SQL_CALC_FOUND_ROWS * FROM t1 JOIN tmp on t1.f2=tmp.f2
1464 ORDER BY tmp.f1, f0 LIMIT 30 OFFSET 30;
1465 SELECT FOUND_ROWS();
1467 SELECT SQL_CALC_FOUND_ROWS * FROM t1 JOIN tmp on t1.f2=tmp.f2
1469 ORDER BY tmp.f1, f0 LIMIT 30 OFFSET 30;
1470 SELECT FOUND_ROWS();
1474 CREATE VIEW v1 as SELECT * FROM t1 ORDER BY f1, f0 LIMIT 30;
1478 CREATE VIEW v1 as SELECT * FROM t1 ORDER BY f1, f0 LIMIT 100;
1479 SELECT * FROM v1 ORDER BY f2, f0 LIMIT 30;
1481 CREATE VIEW v2 as SELECT * FROM t1 ORDER BY f2, f0 LIMIT 100;
1482 SELECT * FROM v1 JOIN v2 on v1.f1=v2.f1 ORDER BY v1.f2,v1.f0,v2.f0
1486 ## Test group & having
1487 SELECT floor(f1/10) f3, count(f2) FROM t1
1488 GROUP BY 1 ORDER BY 2,1 LIMIT 5;
1490 SELECT floor(f1/10) f3, count(f2) FROM t1
1491 GROUP BY 1 ORDER BY 2,1 LIMIT 0;
1496 CREATE PROCEDURE wl1393_sp_test()
1498 SELECT * FROM t1 WHERE f1>10 ORDER BY f2, f0 LIMIT 30;
1499 SELECT * FROM t1 WHERE f1>10 ORDER BY f2, f0 LIMIT 15 OFFSET 15;
1500 SELECT SQL_CALC_FOUND_ROWS * FROM t1 WHERE f1>10
1501 ORDER BY f2, f0 LIMIT 15 OFFSET 15;
1502 SELECT FOUND_ROWS();
1503 SELECT * FROM v1 ORDER BY f2, f0 LIMIT 30;
1505 CALL wl1393_sp_test()|
1506 DROP PROCEDURE wl1393_sp_test|
1510 ## Test with subqueries
1511 SELECT d1.f1, d1.f2 FROM t1
1512 LEFT JOIN (SELECT * FROM t1 ORDER BY f1 LIMIT 30) d1 on t1.f1=d1.f1
1513 ORDER BY d1.f2 DESC LIMIT 30;
1515 SELECT * FROM t1 WHERE f1 = (SELECT f1 FROM t1 ORDER BY 1 LIMIT 1);
1517 --error ER_SUBQUERY_NO_1_ROW
1518 SELECT * FROM t1 WHERE f1 = (SELECT f1 FROM t1 ORDER BY 1 LIMIT 2);
1523 --echo # end of WL#1393 - Optimizing filesort with small limit
1527 --echo # Crash in Field::is_null in field.h on subquery in WHERE clause
1531 pk INT NOT NULL AUTO_INCREMENT,
1532 col_int_key INT DEFAULT NULL,
1533 col_varchar_key VARCHAR(1) DEFAULT NULL,
1535 KEY col_varchar_key (col_varchar_key,col_int_key)
1538 INSERT INTO t1 VALUES (27,7,'x
');
1539 INSERT INTO t1 VALUES (28,6,'m
');
1540 INSERT INTO t1 VALUES (29,4,'c
');
1542 CREATE TABLE where_subselect
1543 SELECT DISTINCT `pk` AS field1 , `pk` AS field2
1545 WHERE alias1 . `col_int_key` > 229
1546 OR alias1 . `col_varchar_key` IS NOT NULL
1547 GROUP BY field1, field2
1551 FROM where_subselect
1552 WHERE (field1, field2) IN (
1553 SELECT DISTINCT `pk` AS field1 , `pk` AS field2
1555 WHERE alias1 . `col_int_key` > 229
1556 OR alias1 . `col_varchar_key` IS NOT NULL
1557 GROUP BY field1, field2
1561 DROP TABLE where_subselect;
1563 --echo # End of Bug #58761
1566 # Bug#35844: Covering index for ref access not compatible with ORDER BY list
1573 PRIMARY KEY (id1, id2, junk),
1574 INDEX id2_j_id1 (id2, junk, id1)
1577 INSERT INTO t1 VALUES (1, 1, 1), (2, 1, 2), (3, 1, 3), (4, 1, 4);
1578 INSERT INTO t1 VALUES (5, 2, 1), (6, 2, 2), (7, 2, 3), (8, 2, 4);
1579 INSERT INTO t1 VALUES (9, 3, 1), (10, 3, 2), (11, 3, 3), (12, 3, 4);
1580 INSERT INTO t1 VALUES (13, 4, 1), (14, 4, 2), (15, 4, 3), (16, 4, 4);
1581 INSERT INTO t1 VALUES (17, 5, 1), (18, 5, 2), (19, 5, 3), (20, 5, 4);
1582 INSERT INTO t1 VALUES (21, 6, 1), (22, 6, 2), (23, 6, 3), (24, 6, 4);
1583 INSERT INTO t1 VALUES (25, 7, 1), (26, 7, 2), (27, 7, 3), (28, 7, 4);
1584 INSERT INTO t1 VALUES (29, 8, 1), (30, 8, 2), (31, 8, 3), (32, 8, 4);
1585 INSERT INTO t1 VALUES (33, 9, 1), (34, 9, 2), (35, 9, 3), (36, 9, 4);
1587 EXPLAIN SELECT id1 FROM t1 WHERE id2 = 4 ORDER BY id1;
1589 SELECT id1 FROM t1 WHERE id2 = 4 ORDER BY id1;
1596 # Bug#46454: MySQL wrong index optimisation leads to incorrect result & crashes
1605 DEFAULT CHARSET = utf8;
1607 INSERT INTO t1 VALUES
1618 INSERT INTO t1 SELECT a + 10, b, c FROM t1;
1619 INSERT INTO t1 SELECT a + 20, b, c FROM t1;
1620 INSERT INTO t1 SELECT a + 40, b, c FROM t1;
1621 INSERT INTO t1 SELECT a + 80, b, c FROM t1;
1622 INSERT INTO t1 SELECT a + 160, b, c FROM t1;
1623 INSERT INTO t1 SELECT a + 320, b, c FROM t1;
1624 INSERT INTO t1 SELECT a + 640, b, c FROM t1;
1625 INSERT INTO t1 SELECT a + 1280, b, c FROM t1 LIMIT 80;
1628 SELECT a FROM t1 WHERE b = 1 ORDER BY c DESC LIMIT 9;
1629 SELECT a FROM t1 WHERE b = 1 ORDER BY c DESC LIMIT 9;
1632 SELECT DISTINCT a FROM t1 WHERE b = 1 ORDER BY c DESC LIMIT 0, 9;
1633 SELECT DISTINCT a FROM t1 WHERE b = 1 ORDER BY c DESC LIMIT 0, 9;
1638 --echo # Bug #43029: FORCE INDEX FOR ORDER BY is ignored when join buffering
1642 CREATE TABLE t1 (a INT, b INT, KEY (a));
1644 INSERT INTO t1 VALUES (0, NULL), (1, NULL), (2, NULL), (3, NULL);
1645 INSERT INTO t1 SELECT a+4, b FROM t1;
1646 INSERT INTO t1 SELECT a+8, b FROM t1;
1648 CREATE TABLE t2 (a INT, b INT);
1650 INSERT INTO t2 VALUES (0,NULL), (1,NULL), (2,NULL), (3,NULL), (4,NULL);
1651 INSERT INTO t2 SELECT a+4, b FROM t2;
1653 --echo # shouldn't have
"using filesort"
1655 SELECT * FROM t1 FORCE INDEX FOR
ORDER BY (a), t2 WHERE t1.a < 2
ORDER BY t1.a;
1657 --echo # should have
"using filesort"
1659 SELECT * FROM t1 USE INDEX FOR
ORDER BY (a), t2 WHERE t1.a < 2
ORDER BY t1.a;
1661 --echo # should have
"using filesort"
1663 SELECT * FROM t1 FORCE INDEX FOR
JOIN (a), t2 WHERE t1.a < 2
ORDER BY t1.a;
1668 --echo # Bug #50394: Regression in EXPLAIN with
index scan, LIMIT, GROUP BY and
1669 --echo #
ORDER BY computed col
1671 CREATE
TABLE t1 ( a INT NOT NULL, b INT NOT NULL, KEY( a, b ) );
1673 INSERT INTO t1 VALUES (1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
1674 INSERT INTO t1 SELECT a + 5, b + 5 FROM t1;
1676 CREATE
TABLE t2( a INT PRIMARY KEY, b INT );
1678 INSERT INTO t2 VALUES (1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
1679 INSERT INTO t2 SELECT a + 5, b + 5 FROM t2;
1682 SELECT count(*) AS c, t1.a
1683 FROM t1
JOIN t2 ON t1.b = t2.a
1693 --echo # Bug #59110: Memory leak of
QUICK_SELECT_I allocated memory
1695 --echo # Bug #59308: Incorrect result
for
1696 --echo SELECT DISTINCT <col>...
ORDER BY <col> DESC
1698 --echo # Use Valgrind
to detect #59110!
1701 CREATE
TABLE t1 (a INT,KEY (a));
1702 INSERT INTO t1 VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
1704 EXPLAIN SELECT DISTINCT a,1 FROM t1 WHERE a <> 1
ORDER BY a DESC;
1705 SELECT DISTINCT a,1 FROM t1 WHERE a <> 1
ORDER BY a DESC;
1710 --echo # Bug#11765255 58201:
1711 --echo # VALGRIND/CRASH WHEN ORDERING BY MULTIPLE AGGREGATE FUNCTIONS
1714 select 1 order by max(1) + min(1);
1716 --echo End of 5.1 tests
1720 --echo # Bug #38745: MySQL 5.1 optimizer uses
filesort for ORDER BY
1721 --echo # when it should use
index
1724 CREATE
TABLE t1 (i1 integer NOT NULL PRIMARY KEY);
1725 CREATE
TABLE t2 (i2 integer NOT NULL PRIMARY KEY);
1726 CREATE
TABLE t3 (i3 integer);
1728 INSERT INTO t1 VALUES (1), (2), (3), (4), (5), (6), (7), (8), (9), (10), (11), (12);
1729 INSERT INTO t2 SELECT * FROM t1;
1732 SELECT t1.*, t2.* FROM t1
JOIN t2 ON t1.i1 = t2.i2
1733 LEFT
JOIN t3 ON t2.i2 = t3.i3
1734 ORDER BY t1.i1 LIMIT 5;
1736 SELECT t1.*, t2.* FROM t1
JOIN t2 ON t1.i1 = t2.i2
1737 LEFT
JOIN t3 ON t2.i2 = t3.i3
1738 ORDER BY t1.i1 LIMIT 5;
1740 DROP
TABLE t1, t2, t3;
1743 --echo # Bug #11885377 VOID JOIN_READ_KEY_UNLOCK_ROW(ST_JOIN_TABLE*): ASSERTION
1744 --echo # `TAB->REF.USE_COUNT
'
1747 CREATE TABLE t1(a INT PRIMARY KEY);
1748 CREATE TABLE t2(b INT,c INT);
1749 INSERT INTO t1 VALUES (1), (2);
1750 INSERT INTO t2 VALUES (1,2), (2,3);
1751 SELECT (SELECT 1 FROM t1 WHERE a=b AND c=1 ORDER BY a DESC) FROM t2;
1755 --echo # Bug #13531865
1756 --echo # TEST_IF_SKIP_SORT_ORDER() INCORRECTLY SKIP FILESORT IF
1757 --echo # 'TYPE
' IS REF_OR_NULL
1764 UNIQUE KEY a_c (a,c),
1765 KEY (a)) engine=myisam;
1767 INSERT INTO t1 VALUES (1,10), (2,NULL), (2,10);
1770 --echo # Using 'KEY a_c
' for order-by opt, would have required
1771 --echo # REF_OR_NULL access which never can be order_by skipped.
1772 --echo # -> Keep initial REF on 'KEY a
' selected by cond. optimizer
1774 SELECT c FROM t1 WHERE a=2 AND (c=10 OR c IS NULL);
1776 SELECT c FROM t1 WHERE a=2 AND (c=10 OR c IS NULL) ORDER BY c;
1777 SELECT c FROM t1 WHERE a=2 AND (c=10 OR c IS NULL) ORDER BY c;
1780 SELECT c FROM t1 WHERE a=2 AND (c=10 OR c IS NULL) ORDER BY c DESC;
1781 SELECT c FROM t1 WHERE a=2 AND (c=10 OR c IS NULL) ORDER BY c DESC;
1786 --echo # Bug #13528826
1787 --echo # TEST_IF_CHEAPER_ORDERING(): CALCULATES INCORRECT 'SELECT_LIMIT
'
1791 CREATE TABLE t1(a int PRIMARY KEY, b int) ENGINE=myisam;
1792 INSERT INTO t1 VALUES
1793 (5, 10), (2, 70), (7, 80), (6, 20), (1, 50), (9, 40), (8, 30), (3, 60);
1794 CREATE TABLE t2 (p int, a int, INDEX i_a(a)) ENGINE=myisam;
1795 INSERT INTO t2 VALUES
1796 (103, 7), (109, 3), (102, 3), (108, 1), (106, 3),
1797 (107, 7), (105, 1), (101, 3), (100, 7), (110, 1);
1799 --echo # number of rows in t1 was incorrectly used as an
1800 --echo # implicit limit-clause if not explicit specified
1802 SELECT t1.a FROM t1 LEFT JOIN t2 ON t1.a=t2.a ORDER BY t1.a;
1804 --echo # Query above used to be explained identical to this:
1806 SELECT t1.a FROM t1 LEFT JOIN t2 ON t1.a=t2.a ORDER BY t1.a LIMIT 8;
1808 -- echo # A really high limit was required to give the correct explain
1810 SELECT t1.a FROM t1 LEFT JOIN t2 ON t1.a=t2.a ORDER BY t1.a LIMIT 1000;
1815 --echo # Bug #13949068 ASSERT TAB->REF.KEY == REF_KEY IN
1816 --echo # PLAN_CHANGE_WATCHDOG::~PLAN_CHANGE_WATCHDOG
1818 CREATE TABLE t1 (a INT, b INT, KEY(b), KEY(b,a)) ENGINE=INNODB;
1819 INSERT INTO t1 VALUES (0,0);
1820 let $query=SELECT DISTINCT a FROM t1 WHERE b=1 ORDER BY 1;
1821 eval EXPLAIN $query;