Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Nối tất cả cột thành một cột mới trong MySQL với CONCAT

Tạo bảng

mysql> CREATE TABLE DemoTable1396 (
    -> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> Name VARCHAR(40),
    -> Age INT
    -> );
Query OK, 0 rows affected (0.93 sec)
mysql> INSERT INTO DemoTable1396(Name, Age) VALUES
    -> ('Chris',21),('David',24),('Bob',26);

Dữ liệu

mysql> SELECT * FROM DemoTable1396;
+----+-------+------+
| Id | Name  | Age  |
+----+-------+------+
| 1  | Chris | 21   |
| 2  | David | 24   |
| 3  | Bob   | 26   |
+----+-------+------+

Truy vấn: CONCAT các cột

mysql> SELECT Id, Name, Age, CONCAT(Id, Name, Age) AS AllColumns
    -> FROM DemoTable1396;

Kết quả

+----+-------+------+------------+
| Id | Name  | Age  | AllColumns |
+----+-------+------+------------+
| 1  | Chris | 21   | 1Chris21   |
| 2  | David | 24   | 2David24   |
| 3  | Bob   | 26   | 3Bob26     |
+----+-------+------+------------+

Mở rộng: Dùng CONCAT_WS(',', Id, Name, Age) để thêm dấu phân cách. Từ MySQL 8.0, có JSON_OBJECT('id', Id, 'name', Name, 'age', Age) tạo JSON chuẩn.