TechBlog / Mysql / Come scrivere il risultato di una query su file csv

Come scrivere il risultato di una query su file csv


Published on 17 April 2015 in mysql

Sarà capitato a tutti di dover eseguire una query sql da riga di comando e dover mostrare il risultato della query su un file csv (che con estrema facilità può essere aperto con programmi quali LibreOffice).

Il file csv potrà essere creato da un terminal bash o dalla console di mysql.

Creazione da terminale

Eseguire il seguente comando:

mysql -u YOUR_USERNAME -p YOUR_DB -B -e "YOUR_QUERY" | sed 's/\t/","/g;s/^/"/;s/$/"/;s/\n//g'

al posto dei placeholder mettere il proprio username, db, e query nell'ordine.

Creazione da console mysql

Per creare un file csv dalla console di mysql eseguire:

mysql -u YOUR_USER -p YOUR_DATABASE
SELECT * INTO OUTFILE 'YOUR_CSV_ABS_PATH' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\n' FROM table WHERE 1

AUTORE: Piergiorgio Faraglia