【发布时间】:2014-08-19 07:36:31
【问题描述】:
我使用此查询,但它不显示列名
SELECT * FROM employeemaster INTO OUTFILE 'c:/order-1.csv' FIELDS 由 ',' 终止,由 '"' 包围 由 '\n' 终止的行;
【问题讨论】:
标签: mysql
我使用此查询,但它不显示列名
SELECT * FROM employeemaster INTO OUTFILE 'c:/order-1.csv' FIELDS 由 ',' 终止,由 '"' 包围 由 '\n' 终止的行;
【问题讨论】:
标签: mysql
使用以下查询:
SELECT empid as employeeid,sname as staffname FROM employeemaster INTO
OUTFILE 'c:/order.csv' FIELDS
TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n';
【讨论】:
有两种可能的解决方案:
最简单的一种:自己硬编码列名并将标题行与查询结果连接起来:
SELECT 'Name_I_Want_For_Col1', 'Name_I_Want_For_Col1', 'Name_I_Want_For_Col1'
UNION ALL
SELECT ColName1, ColName2, ColName3
FROM YourTable
INTO OUTFILE '/path/outfile'
更直接(但更复杂): 从信息架构中获取列名:
select GROUP_CONCAT(CONCAT("'",COLUMN_NAME,"'"))
from INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'my_table'
AND TABLE_SCHEMA = 'my_schema'
order BY ORDINAL_POSITION
UNION ALL
SELECT ColName1, ColName2, ColName3
FROM YourTable
INTO OUTFILE '/path/outfile'
【讨论】: