2015-07-17 8 views
1

Есть ли способ экспортировать данные в таблицу MySQL с заголовками столбцов?MySQL: динамически экспортировать CSV-файл с заголовками

Я нахожу способ сделать это путем жесткого кодирования заголовков в запрос, но если в таблице есть около 60 или даже 100 столбцов, это невозможно.

Я пробовал запрос ниже, но я не могу получить результат, так как первая часть запроса возвращает конкатенированную строку всех заголовков в таблице. Она не дает мне желаемого результата:

(select concat(group_concat(COLUMN_NAME separator ','), "\n") 
    from information_schema.COLUMNS 
    where table_name = '<table name>' 
    and table_schema = '<DB name>' 
    order by ORDINAL_POSITION) 
union all 
(select * from <table name> into outfile "E:\\test.csv" fields terminated by "," lines terminated by "\n"); 

ответ

1
(SELECT 'Order Number','Order Date','Status') 
UNION 
(SELECT orderNumber,orderDate, status 
FROM orders 
INTO OUTFILE 'C:/tmp/orders.csv' 
FIELDS ENCLOSED BY '"' TERMINATED BY ';' ESCAPED BY '"' 
LINES TERMINATED BY '\r\n'); 
+1

если имеется 100 полей в таблице, чем бы вы занялись? –

+0

Я думаю, что это единственный способ. –

+0

, и вам нужно добавить все поле таким образом. –

Смежные вопросы