2
# simple test of group_concat function
5
drop table if exists t1, t2;
8
create table t1 (grp int, a bigint, c char(10) not null, d char(10) not null);
9
insert into t1 values (1,1,"a","a");
10
insert into t1 values (2,2,"b","a");
11
insert into t1 values (2,3,"c","b");
12
insert into t1 values (3,4,"E","a");
13
insert into t1 values (3,5,"C","b");
14
insert into t1 values (3,6,"D","b");
15
insert into t1 values (3,7,"d","d");
16
insert into t1 values (3,8,"d","d");
17
insert into t1 values (3,9,"D","c");
19
# Test of MySQL simple request
20
select grp,group_concat(c) from t1 group by grp;
21
explain extended select grp,group_concat(c) from t1 group by grp;
22
select grp,group_concat(a,c) from t1 group by grp;
23
select grp,group_concat("(",a,":",c,")") from t1 group by grp;
25
# Test of MySQL with options
26
select grp,group_concat(c separator ",") from t1 group by grp;
27
select grp,group_concat(c separator "---->") from t1 group by grp;
28
select grp,group_concat(c order by c) from t1 group by grp;
29
select grp,group_concat(c order by c desc) from t1 group by grp;
30
select grp,group_concat(d order by a) from t1 group by grp;
31
select grp,group_concat(d order by a desc) from t1 group by grp;
33
select grp,group_concat(a order by a,d+c-ascii(c)-a) from t1 group by grp;
34
select grp,group_concat(a order by d+c-ascii(c),a) from t1 group by grp;
36
select grp,group_concat(c order by 1) from t1 group by grp;
37
select grp,group_concat(distinct c order by c) from t1 group by grp;
38
select grp,group_concat(distinct c order by c desc) from t1 group by grp;
39
explain extended select grp,group_concat(distinct c order by c desc) from t1 group by grp;
40
select grp,group_concat(c order by c separator ",") from t1 group by grp;
41
select grp,group_concat(c order by c desc separator ",") from t1 group by grp;
42
select grp,group_concat(distinct c order by c separator ",") from t1 group by grp;
43
explain extended select grp,group_concat(distinct c order by c separator ",") from t1 group by grp;
44
select grp,group_concat(distinct c order by c desc separator ",") from t1 group by grp;
46
# Test of SQL_LIST objects
47
select grp,group_concat(c order by grp desc) from t1 group by grp order by grp;
50
# Test transfer to real values
52
select grp, group_concat(a separator "")+0 from t1 group by grp;
53
select grp, group_concat(a separator "")+0.0 from t1 group by grp;
54
select grp, ROUND(group_concat(a separator "")) from t1 group by grp;
59
create table t1 (grp int, c char(10));
60
insert into t1 values (1,NULL),(2,"b"),(2,NULL),(3,"E"),(3,NULL),(3,"D"),(3,NULL),(3,NULL),(3,"D"),(4,""),(5,NULL);
61
select grp,group_concat(c order by c) from t1 group by grp;
65
set group_concat_max_len = 4;
66
select grp,group_concat(c) from t1 group by grp;
68
set group_concat_max_len = 1024;
72
--error ER_INVALID_GROUP_FUNC_USE
73
select group_concat(sum(c)) from t1 group by grp;
74
--error ER_BAD_FIELD_ERROR
75
select grp,group_concat(c order by 2) from t1 group by grp;
79
# Test variable length
81
create table t1 ( URL_ID int, URL varchar(80));
82
create table t2 ( REQ_ID int, URL_ID int);
83
insert into t1 values (4,'www.host.com'), (5,'www.google.com'),(5,'www.help.com');
84
insert into t2 values (1,4), (5,4), (5,5);
85
# Make this order independent
86
--replace_result www.help.com X www.host.com X www.google.com X
87
select REQ_ID, Group_Concat(URL) as URL from t1, t2 where
88
t2.URL_ID = t1.URL_ID group by REQ_ID;
89
# check min/max function
90
--replace_result www.help.com X www.host.com X www.google.com X
91
select REQ_ID, Group_Concat(URL) as URL, Min(t1.URL_ID) urll,
92
Max(t1.URL_ID) urlg from t1, t2 where t2.URL_ID = t1.URL_ID group by REQ_ID;
97
create table t1 (id int, name varchar(16));
98
insert into t1 values (1,'longername'),(1,'evenlongername');
99
select ifnull(group_concat(concat(t1.id, ':', t1.name)), 'shortname') as 'without distinct: how it should be' from t1;
100
select distinct ifnull(group_concat(concat(t1.id, ':', t1.name)), 'shortname') as 'with distinct: cutoff at length of shortname' from t1;
103
# check zero rows (bug#836)
104
create table t1(id int);
105
create table t2(id int);
106
insert into t1 values(0),(1);
107
select group_concat(t1.id) FROM t1,t2 where t2.id < 2;
112
create table t1 (bar varchar(32));
113
insert into t1 values('test1'),('test2');
114
select group_concat(bar order by concat(bar,bar)) from t1;
115
select group_concat(bar order by concat(bar,bar) desc) from t1;
116
select bar from t1 having group_concat(bar)='';
117
select bar from t1 having instr(group_concat(bar), "test") > 0;
118
select bar from t1 having instr(group_concat(bar order by concat(bar,bar) desc), "test2,test1") > 0;
121
# ORDER BY fix_fields()
122
create table t1 (a int, a1 varchar(10));
123
create table t2 (a0 int);
124
insert into t1 values (0,"a"),(0,"b"),(1,"c");
125
insert into t2 values (1),(2),(3);
126
select group_concat(a1 order by (t1.a IN (select a0 from t2))) from t1;
127
select group_concat(a1 order by (t1.a)) from t1;
131
# Problem with GROUP BY (Bug #2695)
134
CREATE TABLE t1 (id1 int NOT NULL, id2 int NOT NULL);
135
INSERT INTO t1 VALUES (1, 1),(1, 2),(1, 3),(1, 4),(1, 5),(2, 1),(2, 2),(2, 3);
136
CREATE TABLE t2 (id1 int NOT NULL);
137
INSERT INTO t2 VALUES (1),(2),(3),(4),(5);
138
SELECT t1.id1, GROUP_CONCAT(t1.id2 ORDER BY t1.id2 ASC) AS concat_id FROM t1, t2 WHERE t1.id1 = t2.id1 AND t1.id1=1 GROUP BY t1.id1;
139
SELECT t1.id1, GROUP_CONCAT(t1.id2 ORDER BY t1.id2 ASC) AS concat_id FROM t1, t2 WHERE t1.id1 = t2.id1 GROUP BY t1.id1;
140
SELECT t1.id1, GROUP_CONCAT(t1.id2 ORDER BY t1.id2 DESC) AS concat_id FROM t1, t2 WHERE t1.id1 = t2.id1 GROUP BY t1.id1;
141
SELECT t1.id1, GROUP_CONCAT(t1.id2 ORDER BY 6-t1.id2 ASC) AS concat_id FROM t1, t2 WHERE t1.id1 = t2.id1 GROUP BY t1.id1;
143
# The following failed when it was run twice:
144
SELECT t1.id1, GROUP_CONCAT(t1.id2,6-t1.id2 ORDER BY 6-t1.id2 ASC) AS concat_id FROM t1, t2 WHERE t1.id1 = t2.id1 GROUP BY t1.id1;
145
SELECT t1.id1, GROUP_CONCAT(t1.id2,6-t1.id2 ORDER BY 6-t1.id2 ASC) AS concat_id FROM t1, t2 WHERE t1.id1 = t2.id1 GROUP BY t1.id1;
147
SELECT t1.id1, GROUP_CONCAT(t1.id2,"/",6-t1.id2 ORDER BY 1+0,6-t1.id2,t1.id2 ASC) AS concat_id FROM t1, t2 WHERE t1.id1 = t2.id1 GROUP BY t1.id1;
151
# Problem with distinct (Bug #3381)
154
create table t1 (s1 char(10), s2 int not null);
155
insert into t1 values ('a',2),('b',2),('c',1),('a',3),('b',4),('c',4);
156
select distinct s1 from t1 order by s2,s1;
157
select group_concat(distinct s1) from t1;
158
select group_concat(distinct s1 order by s2) from t1 where s2 < 4;
159
# The following is wrong and needs to be fixed ASAP
160
select group_concat(distinct s1 order by s2) from t1;
164
# Test with subqueries (Bug #3319)
167
create table t1 (a int, c int);
168
insert into t1 values (1, 2), (2, 3), (2, 4), (3, 5);
169
create table t2 (a int, c int);
170
insert into t2 values (1, 5), (2, 4), (3, 3), (3,3);
171
select group_concat(c) from t1;
172
select group_concat(c order by (select c from t2 where t2.a=t1.a limit 1)) as grp from t1;
173
select group_concat(c order by (select mid(group_concat(c order by a),1,5) from t2 where t2.a=t1.a)) as grp from t1;
174
select group_concat(c order by (select mid(group_concat(c order by a),1,5) from t2 where t2.a=t1.a) desc) as grp from t1;
175
select t1.a, group_concat(c order by (select c from t2 where t2.a=t1.a limit 1)) as grp from t1 group by 1;
176
select t1.a, group_concat(c order by (select mid(group_concat(c order by a),1,5) from t2 where t2.a=t1.a)) as grp from t1 group by 1;
177
select t1.a, group_concat(c order by (select mid(group_concat(c order by a),1,5) from t2 where t2.a=t1.a) desc) as grp from t1 group by 1;
179
# The following returns random results as we are sorting on blob addresses
180
select group_concat(c order by (select concat(5-t1.c,group_concat(c order by a)) from t2 where t2.a=t1.a)) as grp from t1;
181
select group_concat(c order by (select concat(t1.c,group_concat(c)) from t2 where a=t1.a)) as grp from t1;
183
select a,c,(select group_concat(c order by a) from t2 where a=t1.a) as grp from t1 order by grp;
187
# group_concat of expression with GROUP BY and external GROUP BY
189
CREATE TABLE t1 ( a int );
190
CREATE TABLE t2 ( a int );
191
INSERT INTO t1 VALUES (1), (2);
192
INSERT INTO t2 VALUES (1), (2);
193
SELECT GROUP_CONCAT(t1.a*t2.a ORDER BY t2.a) FROM t1, t2 WHERE t1.a < 3 GROUP BY t1.a;
197
# Bug #4035: group_concat() and HAVING
200
CREATE TABLE t1 (a char(4));
201
INSERT INTO t1 VALUES ('John'), ('Anna'), ('Bill');
202
SELECT GROUP_CONCAT(a SEPARATOR '||') AS names FROM t1
203
HAVING names LIKE '%An%';
204
SELECT GROUP_CONCAT(a SEPARATOR '###') AS names FROM t1
205
HAVING LEFT(names, 1) ='J';
212
CREATE TABLE t1 ( a int, b TEXT );
213
INSERT INTO t1 VALUES (1,'First Row'), (2,'Second Row');
214
SELECT GROUP_CONCAT(b ORDER BY b) FROM t1 GROUP BY a;
218
# check null values #2
221
CREATE TABLE t1 (A_ID INT NOT NULL,A_DESC CHAR(3) NOT NULL,PRIMARY KEY (A_ID));
222
INSERT INTO t1 VALUES (1,'ABC'), (2,'EFG'), (3,'HIJ');
223
CREATE TABLE t2 (A_ID INT NOT NULL,B_DESC CHAR(3) NOT NULL,PRIMARY KEY (A_ID,B_DESC));
224
INSERT INTO t2 VALUES (1,'A'),(1,'B'),(3,'F');
225
SELECT t1.A_ID, GROUP_CONCAT(t2.B_DESC) AS B_DESC FROM t1 LEFT JOIN t2 ON t1.A_ID=t2.A_ID GROUP BY t1.A_ID ORDER BY t1.A_DESC;
233
create table t1 (a int, b text);
234
insert into t1 values (1, 'bb'), (1, 'ccc'), (1, 'a'), (1, 'bb'), (1, 'ccc');
235
insert into t1 values (2, 'BB'), (2, 'CCC'), (2, 'A'), (2, 'BB'), (2, 'CCC');
236
select group_concat(b) from t1 group by a;
237
select group_concat(distinct b) from t1 group by a;
238
select group_concat(b order by b) from t1 group by a;
239
select group_concat(distinct b order by b) from t1 group by a;
240
set local group_concat_max_len=4;
241
select group_concat(b) from t1 group by a;
242
select group_concat(distinct b) from t1 group by a;
243
select group_concat(b order by b) from t1 group by a;
244
select group_concat(distinct b order by b) from t1 group by a;
250
insert into t1 values (1, concat(repeat('1', 300), '2')),
251
(1, concat(repeat('1', 300), '2')), (1, concat(repeat('0', 300), '1')),
252
(2, concat(repeat('1', 300), '2')), (2, concat(repeat('1', 300), '2')),
253
(2, concat(repeat('0', 300), '1'));
254
set local group_concat_max_len=1024;
255
select group_concat(b) from t1 group by a;
256
select group_concat(distinct b) from t1 group by a;
257
select group_concat(b order by b) from t1 group by a;
258
select group_concat(distinct b order by b) from t1 group by a;
259
set local group_concat_max_len=400;
260
select group_concat(b) from t1 group by a;
261
select group_concat(distinct b) from t1 group by a;
262
select group_concat(b order by b) from t1 group by a;
263
select group_concat(distinct b order by b) from t1 group by a;
270
create table t1 (a varchar(255), b varchar(255) );
271
insert into t1 values ('xxx','yyy');
272
select collation(a) from t1;
273
select collation(group_concat(a)) from t1;
274
create table t2 select group_concat(a) as a from t1;
275
--replace_regex /ENGINE=[a-zA-Z]+/ENGINE=DEFAULT/
276
show create table t2;
277
select collation(group_concat(a,b)) from t1;
283
# Cannot convert the charset of a GROUP_CONCAT result
285
#CREATE TABLE t1 (a VARCHAR(10));
286
#INSERT INTO t1 VALUES ('�');
288
#SELECT GROUP_CONCAT(a) FROM t1;
292
# bug #7769: group_concat returning null is checked in having
294
CREATE TABLE t1 (id int);
295
SELECT GROUP_CONCAT(id) AS gc FROM t1 HAVING gc IS NULL;
299
# Bug #8656: Crash with group_concat on alias in outer table
301
create table t2 (a int, b int);
302
insert into t2 values (1,1), (2,2);
303
select b x, (select group_concat(x) from t2) from t2;
307
# Bug #7405: problems with rollup
310
create table t1 (d int not null auto_increment,primary key(d), a int, b int, c int);
311
insert into t1(a,b) values (1,3), (1,4), (1,2), (2,7), (1,1), (1,2), (2,3), (2,3);
312
select d,a,b from t1 order by a;
313
explain select a, group_concat(b) from t1 group by a with rollup;
314
select a, group_concat(b) from t1 group by a with rollup;
315
select a, group_concat(distinct b) from t1 group by a with rollup;
316
select a, group_concat(b order by b) from t1 group by a with rollup;
317
select a, group_concat(distinct b order by b) from t1 group by a with rollup;
323
create table t1 (a char(3), b char(20), primary key (a, b));
324
insert into t1 values ('ABW', 'Dutch'), ('ABW', 'English');
325
select group_concat(a) from t1 group by b;
328
# Bug #12095: GROUP_CONCAT for one row table
332
aID int NOT NULL auto_increment,
333
sometitle varchar(155) NOT NULL default '',
336
UNIQUE KEY sometitle (sometitle)
338
INSERT INTO t1 SET sometitle = 'title1', bID = 1;
339
INSERT INTO t1 SET sometitle = 'title2', bID = 1;
342
bID int NOT NULL auto_increment,
343
somename varchar(155) NOT NULL default '',
345
UNIQUE KEY somename (somename)
347
INSERT INTO t2 SET somename = 'test';
349
SELECT COUNT(*), GROUP_CONCAT(DISTINCT t2.somename SEPARATOR ' |')
350
FROM t1 JOIN t2 ON t1.bID = t2.bID;
351
INSERT INTO t2 SET somename = 'test2';
352
SELECT COUNT(*), GROUP_CONCAT(DISTINCT t2.somename SEPARATOR ' |')
353
FROM t1 JOIN t2 ON t1.bID = t2.bID;
354
DELETE FROM t2 WHERE somename = 'test2';
355
SELECT COUNT(*), GROUP_CONCAT(DISTINCT t2.somename SEPARATOR ' |')
356
FROM t1 JOIN t2 ON t1.bID = t2.bID;
361
# Bug #12859 group_concat in subquery cause incorrect not null
363
create table t1 ( a int not null default 0);
364
select * from (select group_concat(a) from t1) t2;
365
select group_concat('x') UNION ALL select 1;
369
# Bug #12863 : missing separators after first empty cancatanated elements
372
CREATE TABLE t1 (id int, a varchar(9));
373
INSERT INTO t1 VALUES
374
(2, ''), (1, ''), (2, 'x'), (1, 'y'), (3, 'z'), (3, '');
376
SELECT GROUP_CONCAT(a) FROM t1;
377
SELECT GROUP_CONCAT(a ORDER BY a) FROM t1;
379
SELECT GROUP_CONCAT(a) FROM t1 GROUP BY id;
380
SELECT GROUP_CONCAT(a ORDER BY a) FROM t1 GROUP BY id;
385
# Bug #15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
387
create table t1(f1 int);
388
insert into t1 values(1),(2),(3);
389
select f1, group_concat(f1+1) from t1 group by f1 with rollup;
390
select count(distinct (f1+1)) from t1 group by f1 with rollup;
394
# Bug#14169 type of group_concat() result changed to blob if tmp_table was used
396
create table t1 (f1 int, f2 varchar(255));
397
insert into t1 values (1,repeat('a',255)),(2,repeat('b',255));
399
select f2,group_concat(f1) from t1 group by f2;
406
# Bug#8568 "GROUP_CONCAT returns string, unless in a UNION in which case
407
# returns BLOB": add a test case, the bug can not be repeated any more.
410
create table t1 (a char, b char);
411
insert into t1 values ('a', 'a'), ('a', 'b'), ('b', 'a'), ('b', 'b');
412
create table t2 select group_concat(b) as a from t1 where a = 'a';
413
create table t3 (select group_concat(a) as a from t1 where a = 'a') union
414
(select group_concat(b) as a from t1 where a = 'b');
415
drop table t1, t2, t3;
418
# Bug #16712: group_concat returns odd string instead of intended result
420
CREATE TABLE t1 (a INT, b LONGTEXT, PRIMARY KEY (a));
422
SET GROUP_CONCAT_MAX_LEN = 20000000;
424
INSERT INTO t1 VALUES (1,REPEAT(CONCAT('A',CAST(CHAR(0) AS BINARY),'B'), 40000));
425
INSERT INTO t1 SELECT a + 1, b FROM t1;
427
SELECT a, CHAR_LENGTH(b) FROM t1;
428
SELECT CHAR_LENGTH( GROUP_CONCAT(b) ) FROM t1;
429
SET GROUP_CONCAT_MAX_LEN = 1024;
433
# Bug #22015: crash with GROUP_CONCAT over a derived table that
434
# returns the results of aggregation by GROUP_CONCAT
437
CREATE TABLE t1 (a int, b int);
439
INSERT INTO t1 VALUES (2,1), (1,2), (2,2), (1,3);
441
SELECT GROUP_CONCAT(a), x
442
FROM (SELECT a, GROUP_CONCAT(b) x FROM t1 GROUP BY a) AS s
447
# Bug#23451 GROUP_CONCAT truncates a multibyte utf8 character
454
insert into t1 values (repeat('a', 1022), 0), (repeat( 0xc3b7, 4), 0);
458
eval set group_concat_max_len= 1022 + $1;
460
select @x:=group_concat(x) from t1 group by y;
462
select @@group_concat_max_len, length(@x), char_length(@x), right(@x,12), right(HEX(@x),12);
466
set group_concat_max_len=1024;
469
# Bug#14169 type of group_concat() result changed to blob if tmp_table was used
471
create table t1 (f1 int, f2 varchar(255));
472
insert into t1 values (1,repeat('a',255)),(2,repeat('b',255));
474
select f2,group_concat(f1) from t1 group by f2;
479
# Bug #26815: Unexpected built-in function behavior: group_concat(distinct
482
CREATE TABLE t1(a TEXT, b CHAR(20));
483
INSERT INTO t1 VALUES ("one.1","one.1"),("two.2","two.2"),("one.3","one.3");
484
SELECT GROUP_CONCAT(DISTINCT UCASE(a)) FROM t1;
485
SELECT GROUP_CONCAT(DISTINCT UCASE(b)) FROM t1;
489
# Bug #28273: GROUP_CONCAT and ORDER BY: No warning when result gets truncated.
491
CREATE TABLE t1( a VARCHAR( 10 ), b INT );
492
INSERT INTO t1 VALUES ( repeat( 'a', 10 ), 1),
493
( repeat( 'b', 10 ), 2);
494
SET group_concat_max_len = 20;
495
SELECT GROUP_CONCAT( a ) FROM t1;
496
SELECT GROUP_CONCAT( DISTINCT a ) FROM t1;
497
SELECT GROUP_CONCAT( a ORDER BY b ) FROM t1;
498
SELECT GROUP_CONCAT( DISTINCT a ORDER BY b ) FROM t1;
499
SET group_concat_max_len = DEFAULT;
501
# Bug #23856:GROUP_CONCAT and ORDER BY: junk from previous rows for query on I_S
503
SET group_concat_max_len= 65535;
504
CREATE TABLE t1( a TEXT, b INTEGER );
505
INSERT INTO t1 VALUES ( 'a', 0 ), ( 'b', 1 );
506
SELECT GROUP_CONCAT( a ORDER BY b ) FROM t1;
507
SELECT GROUP_CONCAT(DISTINCT a ORDER BY b) FROM t1;
508
SELECT GROUP_CONCAT(DISTINCT a) FROM t1;
509
SET group_concat_max_len= 10;
510
SELECT GROUP_CONCAT(a ORDER BY b) FROM t1;
511
SELECT GROUP_CONCAT(DISTINCT a ORDER BY b) FROM t1;
512
SELECT GROUP_CONCAT(DISTINCT a) FROM t1;
514
SET group_concat_max_len= 65535;
515
CREATE TABLE t2( a TEXT );
516
INSERT INTO t2 VALUES( REPEAT( 'a', 5000 ) );
517
INSERT INTO t2 VALUES( REPEAT( 'b', 5000 ) );
518
INSERT INTO t2 VALUES( REPEAT( 'a', 5000 ) );
519
SELECT LENGTH( GROUP_CONCAT( DISTINCT a ) ) FROM t2;
521
CREATE TABLE t3( a TEXT, b INT );
522
INSERT INTO t3 VALUES( REPEAT( 'a', 65534 ), 1 );
523
INSERT INTO t3 VALUES( REPEAT( 'a', 65535 ), 2 );
524
INSERT INTO t3 VALUES( REPEAT( 'a', 65533 ), 3 );
525
SELECT LENGTH( GROUP_CONCAT( a ) ) FROM t3 WHERE b = 1;
526
SELECT LENGTH( GROUP_CONCAT( a ) ) FROM t3 WHERE b = 2;
527
SELECT LENGTH( GROUP_CONCAT( a ) ) FROM t3 WHERE b = 3;
529
SET group_concat_max_len= DEFAULT;
530
DROP TABLE t1, t2, t3;
533
# Bug#29850: Wrong charset of the GROUP_CONCAT result when the select employs
536
#create table t1 (id int, name varchar(20));
537
#insert into t1 (id, name) values (1, "�ra");
538
#insert into t1 (id, name) values (2, "�ra");
539
#select b.id, group_concat(b.name) from t1 a, t1 b group by b.id;
543
# Bug#30897 GROUP_CONCAT returns extra comma on empty fields
545
create table t1 (f1 char(20));
546
insert into t1 values (''),('');
547
select group_concat(distinct f1) from t1;
548
select group_concat(f1) from t1;
550
# Bug#32798: DISTINCT in GROUP_CONCAT clause fails when ordering by a column
553
CREATE TABLE t1 (a INT, b INT);
555
INSERT INTO t1 VALUES (1, 1), (2, 2), (2, 3);
557
SELECT GROUP_CONCAT(DISTINCT a ORDER BY b) FROM t1;
558
SELECT GROUP_CONCAT(DISTINCT a ORDER BY b DESC) FROM t1;
559
SELECT GROUP_CONCAT(DISTINCT a) FROM t1;
561
SELECT GROUP_CONCAT(DISTINCT a + 1 ORDER BY 3 - b) FROM t1;
562
SELECT GROUP_CONCAT(DISTINCT a + 1 ORDER BY b) FROM t1;
563
SELECT GROUP_CONCAT(a ORDER BY 3 - b) FROM t1;
565
CREATE TABLE t2 (a INT, b INT, c INT, d INT);
567
# There is one duplicate in the expression list: 1,10
568
# There is one duplicate in ORDER BY list, but that shouldnt matter: 1,10
569
INSERT INTO t2 VALUES (1,1, 1,1), (1,1, 2,2), (1,2, 2,1), (2,1, 1,2);
571
SELECT GROUP_CONCAT(DISTINCT a, b ORDER BY c, d) FROM t2;
572
SELECT GROUP_CONCAT(DISTINCT a, b ORDER BY d, c) FROM t2;
574
CREATE TABLE t3 (a INT, b INT, c INT);
576
INSERT INTO t3 VALUES (1, 1, 1), (2, 1, 2), (3, 2, 1);
578
SELECT GROUP_CONCAT(DISTINCT a, b ORDER BY b, c) FROM t3;
579
SELECT GROUP_CONCAT(DISTINCT a, b ORDER BY c, b) FROM t3;
581
SELECT GROUP_CONCAT(DISTINCT a, b ORDER BY a, b) FROM t1;
582
SELECT GROUP_CONCAT(DISTINCT b, a ORDER BY a, b) FROM t1;
583
SELECT GROUP_CONCAT(DISTINCT a, b ORDER BY b, a) FROM t1;
584
SELECT GROUP_CONCAT(DISTINCT b, a ORDER BY a, b) FROM t1;
585
SELECT GROUP_CONCAT(DISTINCT a ORDER BY a, b) FROM t1;
586
SELECT GROUP_CONCAT(DISTINCT b ORDER BY b, a) FROM t1;
587
SELECT GROUP_CONCAT(DISTINCT a, b ORDER BY a) FROM t1;
588
SELECT GROUP_CONCAT(DISTINCT b, a ORDER BY b) FROM t1;
590
DROP TABLE t1, t2, t3;
593
# Bug #34747: crash in debug assertion check after derived table
595
CREATE TABLE t1(a INT);
596
INSERT INTO t1 VALUES (),();
601
GROUP_CONCAT(DISTINCT t1.a) AS d2
610
--echo End of 5.0 tests