экспорт таблицы в MySQL со столбцами, которые имеют символы новой строки - PullRequest
8 голосов
/ 28 декабря 2010

Я довольно неопытен в SQL, поэтому должно быть простое решение моей проблемы: Я выбираю таблицу в файле, разделенном запятыми, и столбец типа TEXT содержит символы новой строки, поэтому, когда я пытаюсь импортировать мой csv в Excel, он создает отдельные строки для каждого фрагмента текста после символа новой строки.

Вот мой запрос:

SELECT * FROM `db`.`table` INTO OUTFILE 'c:\\result.txt' FIELDS TERMINATED BY ','
ESCAPED BY '\\' OPTIONALLY ENCLOSED BY '"'  LINES TERMINATED BY '\r\n' ;

, а затем в Excel я импортирую в виде файла, разделенного запятыми, что вызывает проблемы для столбца, в котором есть текст с символами новой строки.

любая помощь приветствуется!

Ответы [ 2 ]

4 голосов
/ 28 декабря 2010

Просто заключите все в двойные кавычки, возможно.

SELECT * FROM db.table INTO OUTFILE 'c:/result.txt'  FIELDS TERMINATED BY ',' ESCAPED BY '\\' ENCLOSED BY '"' LINES TERMINATED BY '\r\n';
1 голос
/ 04 января 2011

Новиков верен, но вы также можете экранировать символы новой строки при экспорте.

SELECT REPLACE(`fieldname1`,'\n','\\n'),`fieldname2` FROM db.table INTO OUTFILE 'c:/result.txt'  FIELDS TERMINATED BY ',' ESCAPED BY '\\' ENCLOSED BY '"' LINES TERMINATED BY '\r\n';

Затем все символы новой строки будут заменены текстовой строкой '\ n'. Однако это может быть не то, что вам нужно в выводе.

DC

...