Успях да запазя успешно резултатите от MySQL заявки като CSV и да ги импортирам в Excel, както следва:
-
Използвайте формуляра...
IFNULL(ColumnA, "" ) AS "Column A",
...за всяка колона или израз във вашия оператор SELECT, отколкото може да върне NULL (\N). Това ще гарантира, че стойностите NULL във вашия CSV файл ще се показват като правилно цитирани празни низове, а не като \N като неправилно цитирани. Вместо празен низ, бихте могли да посочите стойност, която да представлява NULL, например...
IFNULL(ColumnA, "~NULL~" ) AS "Column A",
- Използвайте следните опции OUTFILE:
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
ESCAPED BY '"'
LINES TERMINATED BY '\r\n'
Обърнете внимание, че ESCAPED BY указва един двоен кавичък, както и ENCLOSED BY. Не съм тествал дали OPTIONALLY ENCLOSED BY ще бъде успешен, така че просто оставям OPTIONALLY извън.
Използването на двойни кавички за избягване на други двойни кавички в рамките на стойност на полето в кавички се изисква съгласно CSV спецификацията - RFC 4180, раздел 2.7.