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

Đặt nháy đơn cho giá trị với GROUP_CONCAT trong MySQL

Kết hợp CONCAT() và GROUP_CONCAT() để gom nhóm giá trị và bọc mỗi giá trị trong nháy đơn.

Cú pháp

SELECT GROUP_CONCAT(CONCAT('''', ten_cot, '''')) AS ten_alias 
FROM ten_bang;

'''' là cách escape nháy đơn trong chuỗi SQL (nháy đơn bao quanh nháy đơn).

Ví dụ minh họa

Tạo bảng Group_ConcatDemo:

CREATE TABLE Group_ConcatDemo (
    Id INT NOT NULL AUTO_INCREMENT,
    Value INT, PRIMARY KEY (Id)
);
INSERT INTO Group_ConcatDemo (Value) VALUES (100),(120),(234),(2345),(5678),(86879);

Truy vấn gom nhóm có nháy đơn

SELECT GROUP_CONCAT(CONCAT('''', Value, '''')) AS SingleQuote 
FROM Group_ConcatDemo;

Kết quả:

+-----------------------------------------+
| SingleQuote                             |
+-----------------------------------------+
| '100','120','234','2345','5678','86879' |
+-----------------------------------------+

Ứng dụng: Tự động sinh câu lệnh IN (...) cho truy vấn khác, xuất CSV có quote, v.v.

Lưu ý: GROUP_CONCAT có giới hạn độ dài mặc định 1024 byte. Tăng bằng: SET SESSION group_concat_max_len = 1000000;