如何在 MySQL 中將結果顯示在一行中?


為此,你可以使用 group_concat()。我們先建立一個表 -

mysql> create table DemoTable1507
   -> (
   -> Name varchar(20),
   -> PaperSet int
   -> );
Query OK, 0 rows affected (0.68 sec)

使用 insert 命令向表中插入一些記錄 -

mysql> insert into DemoTable1507 values('Chris',111);
Query OK, 1 row affected (0.37 sec)
mysql> insert into DemoTable1507 values('David',112);
Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable1507 values('Mike',111);
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable1507 values('Bob',113);
Query OK, 1 row affected (0.14 sec)

使用 select 語句從表中顯示所有記錄 -

mysql> select * from DemoTable1507;

這將生成以下輸出 -

+-------+----------+
| Name  | PaperSet |
+-------+----------+
| Chris |      111 |
| David |      112 |
| Mike  |      111 |
| Bob   |      113 |
+-------+----------+
4 rows in set (0.00 sec)

以下是對 MySQL 中僅顯示一行結果的查詢 -

mysql> select group_concat(Name order by Name desc separator ':')
   -> from DemoTable1507
   -> where PaperSet=111;

這將生成以下輸出 -

+-----------------------------------------------------+
| group_concat(Name order by Name desc separator ':') |
+-----------------------------------------------------+
| Mike:Chris                                          |
+-----------------------------------------------------+
1 row in set (0.00 sec)

更新時間: 2019 年 12 月 11 日

瀏覽超過 2,000 次

開啟你的 職業 生涯

透過完成課程取得證書

開始吧
廣告
© . All rights reserved.