Comment sauvegarder la sortie de requête MySQL pour exceller ou.fichier txt? [dupliquer]
cette question a déjà une réponse ici:
comment sauvegarder la sortie D'une requête MySQL sur une feuille MS Excel?
même s'il est seulement possible de stocker les données dans un fichier .txt
, il sera être d'accord.
2 réponses
à Partir de Enregistrer MySQL résultats de la requête dans un fichier texte ou CSV :
MySQL fournit un mécanisme facile pour écrire les résultats d'un select déclaration dans un fichier texte sur le serveur. En utilisant les options étendues de la nomenclature dans OUTFILE, il est possible de créer une virgule valeur séparée (CSV) qui peut être importée dans un tableur les applications telles que OpenOffice ou Excel ou toute autre application qui accepte les données au format CSV.
a donné une requête telle que
SELECT order_id,product_name,qty FROM orders
qui renvoie à trois colonnes de données, les résultats peuvent être placés dans le fichier /tmo/commandes.txt utilisant la requête:
SELECT order_id,product_name,qty FROM orders INTO OUTFILE '/tmp/orders.txt'
cela va créer un fichier tab-séparé, chaque ligne sur sa propre ligne. De modifier ce comportement, il est possible d'ajouter des modificateurs pour la requête:
SELECT order_id,product_name,qty FROM orders INTO OUTFILE '/tmp/orders.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n'
Dans cet exemple, chaque champ sera enfermé dans des "guillemets," l' les champs seront séparés par des virgules, et chaque ligne sera nouvelle ligne séparée par une nouvelle ligne (\n). Exemple de sortie de cette commande ressemblerait à:
"1","Tech-Recipes sock puppet","14.95" "2","Tech-Recipes chef's hat","18.95"
Gardez à l'esprit que le fichier de sortie ne doit pas déjà exister et que l' L'utilisateur MySQL exécute les permissions d'écriture dans le répertoire MySQL essaye d'écrire le fichier.
syntaxe
SELECT Your_Column_Name
FROM Your_Table_Name
INTO OUTFILE 'Filename.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
Ou vous pouvez essayer cette trop
vous pouvez essayer d'exécuter la requête à partir de votre client local et rediriger la sortie vers une destination de fichier locale;
Mysql -user -pass -e"select cols from table where cols not null" > /tmp/output
vous pouvez écrire les codes suivants pour accomplir cette tâche:
SELECT ... FROM ... WHERE ...
INTO OUTFILE 'textfile.csv'
FIELDS TERMINATED BY '|'
il exporte le résultat à CSV et ensuite l'exporter à la feuille excel.