Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm cách nào để MySQL hiển thị kết quả trên một dòng?

Đối với điều này, bạn có thể sử dụng group_concat (). Đầu tiên chúng ta hãy tạo một bảng -

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

Chèn một số bản ghi vào bảng bằng lệnh chèn -

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)

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select -

mysql> select * from DemoTable1507;

Điều này sẽ tạo ra kết quả sau -

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

Đây là truy vấn để làm cho MySQL hiển thị kết quả chỉ trong một dòng duy nhất -

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

Điều này sẽ tạo ra kết quả sau -

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