簡體   English   中英

如何在MySQL中選擇列為CSV?

[英]How to select columns as CSV in MySQL?

這是表格

id    name
----------
1     john
2     dave
3     eve

select * from table將給我們

id    name
----------
1     john
2     dave
3     eve

您將如何查詢以獲得以下輸出?

id       name
----------------------
1,2,3    john,dave,eve

您可以使用group_concat函數:

SELECT GROUP_CONCAT(id), GROUP_CONCAT(name)
FROM   mytable
SELECT id, name, email INTO OUTFILE '/tmp/result.csv'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
ESCAPED BY ‘\\’
LINES TERMINATED BY '\n'
FROM users WHERE 1

您需要首先增加變量group_concat_max_len的值,以便數據不會在group_concat中截斷。 通過命令檢查變量值:

show variables like 'group_concat_max_len'

並將其增加為:

set global group_concat_max_len = 160000.

在此使用后查詢:

SELECT GROUP_CONCAT(id), GROUP_CONCAT(name) FROM   table_name

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM