为此,将GROUP_CONCAT()与ORDER BY子句一起使用。让我们首先创建一个表-
mysql> create table DemoTable1588 -> ( -> StudentId int, -> StudentFirstName varchar(20), -> StudentMarks int -> );
使用插入命令在表中插入一些记录-
mysql> insert into DemoTable1588 values(110,'Bob',78); mysql> insert into DemoTable1588 values(101,'Sam',78); mysql> insert into DemoTable1588 values(105,'Mike',78);
使用select语句显示表中的所有记录-
mysql> select * from DemoTable1588;
这将产生以下输出-
+-----------+------------------+--------------+ | StudentId | StudentFirstName | StudentMarks | +-----------+------------------+--------------+ | 110 | Bob | 78 | | 101 | Sam | 78 | | 105 | Mike | 78 | +-----------+------------------+--------------+ 3 rows in set (0.00 sec)
这是按排序顺序调用聚合函数的查询-
mysql> select group_concat(StudentFirstName order by StudentId separator '--') from DemoTable1588 -> group by StudentMarks;
这将产生以下输出-
+------------------------------------------------------------------+ | group_concat(StudentFirstName order by StudentId separator '--') | +------------------------------------------------------------------+ | Sam--Mike--Bob | +------------------------------------------------------------------+ 1 row in set (0.04 sec)