2010-09-21 4 views
0

Comment puis-je ceci:delimiter mysql question

mysql -u myuser -p mydb -e "select f1,f2 from mytable" > /tmp/mydata.txt 

Mais je veux séparer les champs par une virgule.

mysql --delimiter=, -u myuser -p mydb -e "select f1,f2 from mytable" > /tmp/mydata.txt 

ne fonctionne pas :(

+0

lire le manuel sur les --delimiter option, je ne pense pas que ce soit la bonne option que vous recherchez. – Doomsday

Répondre

5

Je ne comprends pas vraiment ce qui est la question Pouvez-vous expliquer ce que vous voulez

?

Si vous souhaitez ajouter un délimiteur à votre sortie, vous devez utiliser CONCAT_WS:

mysql -u myuser -p mydb -e "select CONCAT_WS(',',f1,f2) from mytable" > /tmp/mydata.txt 
0

Mettez la virgule entre guillemets:

mysql --delimiter="," -u myuser -p mydb -e "select f1,f2 from mytable" > /tmp/mydata.txt 
+0

Non alors on dit inconnu coloum f1: S ?? – piet

1

vous pouvez utiliser INTO OUTFILE comme ceci:

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' "