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

Nhóm nối họ từ một cột MySQL và đặt điều kiện để hiển thị các bản ghi hạn chế

Sử dụng GROUP_CONCAT () để thực hiện nối nhóm và đặt một điều kiện. Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable813(
   UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   UserFirstName varchar(100),
   UserLastName varchar(100)
);
Query OK, 0 rows affected (0.49 sec)

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

mysql> insert into DemoTable813(UserFirstName,UserLastName) values('Adam','Smith');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable813(UserFirstName,UserLastName) values('Chris','Brown');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable813(UserFirstName,UserLastName) values('David','Miller');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable813(UserFirstName,UserLastName) values('Carol','Taylor');
Query OK, 1 row affected (0.22 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 DemoTable813;

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

+--------+---------------+--------------+
| UserId | UserFirstName | UserLastName |
+--------+---------------+--------------+
|      1 | Adam          | Smith        |
|      2 | Chris         | Brown        |
|      3 | David         | Miller       |
|      4 | Carol         | Taylor       |
+--------+---------------+--------------+
4 rows in set (0.00 sec)

Sau đây là cách nhóm các nối và chỉ hiển thị họ -

mysql> select group_concat(UserLastName) from DemoTable813 where UserId < 4;

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

+----------------------------+
| group_concat(UserLastName) |
+----------------------------+
| Smith,Brown,Miller         |
+----------------------------+
1 row in set (0.00 sec)