2010-03-12 3 views
10

Comment faire un vidage mysql pour table à partir d'une requête?mysqldump à partir d'une requête

je besoin de quelque chose comme ça ..

mysqldump -uroot -pxxxx mydb "select * from table where name='1';" > /tmp/a 

Merci.

Répondre

19

mysqldump a un paramètre --where: Manual

benne uniquement les lignes sélectionnées dans la donnée condition WHERE. Les citations entourant la condition sont obligatoires si elles contiennent des espaces ou d'autres caractères spéciaux pour votre interpréteur de commandes.

Exemples:

--where = "user = 'jimf'"

-w "UserID> 1"

-w "UserID < 1"

I ne sais pas ce qu'ils utilisent, mais phpMyAdmin peut le faire aussi, Il suffit de faire la requête, sélectionnez toutes les lignes et choisissez le bouton "exporter" vers le bas.

+0

Merci ........................ – Hulk

4

Une autre option consiste à insérer les résultats de votre requête dans une table tmp, puis de vider cette table tmp.

+1

Cette solution est préférable car vous pouvez exporter le résultat des requêtes avec des jointures. Mysql peut créer une table à partir d'un select (http://dev.mysql.com/doc/refman/5.0/fr/create-table-select.html) – pedromanoel