Exportar Resultados de Consulta a un Archivo CSV
Exportar datos es tan importante como importarlos. Es posible que necesite crear informes, compartir datos con otros sistemas o realizar análisis en un programa de hojas de cálculo. La sentencia SELECT ... INTO OUTFILE le permite guardar el resultado de cualquier consulta directamente en un archivo.
Primero, agreguemos dos empleados más a la tabla en su shell de MySQL.
INSERT INTO employees (id, first_name, last_name, email, department) VALUES
(5, 'Alice', 'Johnson', 'alice.johnson@example.com', 'Sales'),
(6, 'Bob', 'Williams', 'bob.williams@example.com', 'Marketing');
Ahora, exporte toda la tabla employees a un nuevo archivo llamado employees_export.csv. Primero, asegúrese de que todavía está en la base de datos correcta:
SELECT id, first_name, last_name, email, department
FROM company.employees
INTO OUTFILE '/tmp/employees_export.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n';
SELECT ...: Esta es una consulta estándar que especifica qué datos exportar.
INTO OUTFILE '/tmp/employees_export.csv': Especifica la ruta completa para el archivo de salida. Por seguridad, MySQL requiere que este archivo no exista previamente.
FIELDS TERMINATED BY ',': Separa los campos con una coma.
ENCLOSED BY '"': Envuelve cada valor de campo entre comillas dobles, que es un formato CSV común.
LINES TERMINATED BY '\n': Termina cada fila con un carácter de nueva línea.
Después de ejecutar el comando, cambie a su otra pestaña de terminal (o abra una nueva) y vea el contenido del archivo recién creado.
cat /tmp/employees_export.csv
Verá las seis filas de su tabla, formateadas como un archivo CSV.
"1","John","Doe","john.doe@example.com","Sales"
"2","Jane","Smith","jane.smith@example.com","Marketing"
"3","Peter","Jones","peter.jones@example.com","Engineering"
"4","Mary","Brown","mary.brown@example.com","HR"
"5","Alice","Johnson","alice.johnson@example.com","Sales"
"6","Bob","Williams","bob.williams@example.com","Marketing"