Mysql delimiter question
Как это сделать:
mysql -u myuser -p mydb -e "select f1,f2 from mytable" > /tmp/mydata.txt
Но я хочу разделить поля запятой.
mysql --delimiter=, -u myuser -p mydb -e "select f1,f2 from mytable" > /tmp/mydata.txt
Не работает: (
Ответы
Ответ 1
Я действительно не понимаю, в чем вопрос? Можете ли вы объяснить, что хотите?
Если вы хотите добавить разделитель к вашему выводу, вы должны использовать CONCAT_WS:
mysql -u myuser -p mydb -e "select CONCAT_WS(',',f1,f2) from mytable" > /tmp/mydata.txt
Ответ 2
вы можете использовать INTO OUTFILE следующим образом:
mysql -u myuser -p mydatabase -e
"select field1 , field2 FROM mytable INTO OUTFILE
'/tmp/myfilename.csv' FIELDS TERMINATED BY ','
ENCLOSED BY '\"' LINES TERMINATED BY '\n' "
Ответ 3
Поместите запятую между кавычками:
mysql --delimiter="," -u myuser -p mydb -e "select f1,f2 from mytable" > /tmp/mydata.txt
Ответ 4
Вы также можете попробовать команду SELECT INTO OUTFILE для создания файла CSV. Информация здесь: http://dev.mysql.com/doc/refman/5.1/en/select.html