我知道如何将多个列导出到 csv 文件。使用:
SELECT `col1`, `col2`
FROM table
INTO OUTFILE 'C:/filename.csv'
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n';
当我使用 excel 打开文件时,一切都很好,每条记录都在一行中。但是,当我使用记事本打开它时,我发现所有记录都彼此相邻打印,没有行分隔符。如何使查询的输出打印为每行一条记录,每列用逗号分隔?
我知道如何将多个列导出到 csv 文件。使用:
SELECT `col1`, `col2`
FROM table
INTO OUTFILE 'C:/filename.csv'
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n';
当我使用 excel 打开文件时,一切都很好,每条记录都在一行中。但是,当我使用记事本打开它时,我发现所有记录都彼此相邻打印,没有行分隔符。如何使查询的输出打印为每行一条记录,每列用逗号分隔?
\n
linux下是换行,但是windows使用\r\n
因此,此代码可以满足您的要求
SELECT `col1`, `col2`
FROM table
INTO OUTFILE 'C:/filename.csv'
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\r\n';
许多其他工具,如 Excel、Notepad++ 或 WordPad 都可以使用\n
和读取文件\r\n
,因此它们不受此更改的影响,并且可以使用您的原始代码和此修改正确显示文件。
'\n' 在 Unix/Linux 中用作行分隔符,Windows 的行分隔符应为 '\r\n'。