jueves, marzo 26, 2009

Exportar de MySQL a CSV

Hoy tenía que extraer una serie de datos de un cliente y quería exportarlo directamente a CSV. Me ha pasado lo de siempre, como no uso el comando no lo recuerdo así que he tirado de Google que te lo resuelve en un plis, pero hoy me ha sorprendido bastante el listado de resultados porque la gran mayoría de páginas mostraban código PHP para obtener el resultado de una query a MySQL, parsearlo y volcarlo en un fichero. Y me ha sorprendido porque pudiendo aprovechar herramientas ya creadas reinventar la rueda es trabajar en balde. Está muy bien crear funciones para ver si un lenguaje es capaz de realizar ciertas cosas o para probarse uno mismo, pero sabiendo que PHP puede hacer eso y más lo mejor es tirar por lo fácil... en mi modesta opinión.

Así que aquí va cómo generar un CSV desde MySQL suponiendo que tenemos la tabla Clientes con nombre, telefono y DNI como campos:

select nombre,telefono,DNI from Clientes
into outfile '/tmp/export.csv' fields
terminated by ';' lines terminated by '\n';

He visto por ahí que el into outfile... se puede poner justo después del select y escribir el from después. No lo he probado. Sería cuestión de probar.

Para más parámetros y referéncia completa:
Select MySQL

Etiquetas: , , , ,