Volver a la lista de artículos Artículos
Lectura de 7 minutos

Cómo exportar datos de MySQL a un archivo CSV

Una base de datos es una plataforma primaria para trabajar con datos y almacenarlos. Pero a menudo es necesario sacar los datos de la base de datos. Siga leyendo para averiguar cómo exportar datos de la base de datos MySQL a un archivo CSV.

En este artículo, demostraremos cómo exportar datos a un archivo CSV. Comenzaremos introduciendo qué es un archivo CSV y por qué lo usamos. Luego, exportaremos datos de una base de datos MySQL a un archivo CSV. Puede hacerlo de dos maneras: utilizando una línea de comandos o una interfaz gráfica de usuario (GUI).

Antes de empezar, asegúrate de haber instalado una base de datos MySQL en tu PC. Y para empezar, echa un vistazo a nuestro curso sobre SQL para principiantes en MySQL para aprender o repasar los comandos principales de MySQL. Puedes leer más sobre nuestros cursos de MySQL aquí.

Comencemos.

Un archivo CSV: Qué es y por qué lo usamos

CSV significa "Valores Separados por Comas". Un archivo CSV es un archivo de texto que almacena datos tabulares. Cada línea de un archivo CSV representa una fila de una tabla. Los valores de las columnas suelen estar separados por una coma (de ahí el nombre, valores separados por comas), pero se pueden utilizar otros separadores, como un punto y coma o un tabulador. Normalmente, la primera fila de un archivo CSV almacena las cabeceras de las columnas y las filas siguientes los datos.

Veamos un ejemplo de tabla de base de datos y el archivo CSV creado a partir de ella.

He aquí una tabla:

IdFirstNameLastNameSSN
35JonathanGlover111222333
36JenniferBrown444555666
37ChristopherWatson777888999

Y aquí el archivo CSV correspondiente:

Id,FirstName,LastName,SSN
35,Jonathan,Glover,111222333
36,Jennifer,Brown,444555666
37,Christopher,Watson,777888999

¡Así de fácil!

Ahora vamos a responder a la pregunta de por qué querrías utilizar un archivo CSV. Un archivo CSV es la forma más sencilla y eficaz de transferir datos entre bases de datos; este formato de archivo es compatible con cualquier base de datos relacional. Ocupa poco espacio de almacenamiento (dependiendo de la cantidad de datos, claro), y puede convertirse a casi cualquier formato de archivo compatible con el sistema para su posterior procesamiento.

He aquí algunos ejemplos de lo esenciales que son los sencillos archivos CSV. Puede utilizarlos para:

  • Exportar datos de una base de datos MySQL para su posterior procesamiento en una herramienta diferente.
  • Trasladar datos de una base de datos a otra sin problemas de compatibilidad.
  • Importar datos a una base de datos.

En este artículo nos centraremos en la exportación de datos desde una base de datos MySQL. Siga leyendo para averiguar qué puede hacer con los datos exportados.

¿Por qué exportar datos de una base de datos MySQL a un archivo CSV?

Respondamos a la pregunta de por qué exportar datos de una base de datos MySQL, o de cualquier otra base de datos, a un archivo CSV.

Después de exportar datos a un archivo CSV, puede:

  • Transferir datos a otra base de datos importando un archivo CSV.
  • Cargar un archivo CSV en diferentes herramientas de software para su posterior procesamiento, como una hoja de cálculo o una herramienta de generación de informes.
  • Analizar los datos fuera de línea.
  • Crear un gráfico o una tabla a partir de los datos del archivo CSV.
  • Introducir los datos en informes.

Ahora es el momento de ver cómo se hace en MySQL.

Exportar datos de una base de datos MySQL a un archivo CSV

Esta es una guía paso a paso sobre cómo conectarse a una base de datos MySQL a través de una herramienta de línea de comandos o una interfaz gráfica de usuario (GUI) y cómo exportar datos a un archivo CSV.

Si quieres practicar con nosotros, instala la base de datos MySQL en tu PC para seguir los pasos.

Uso de la línea de comandos

Conectando la Base de Datos

Puedes conectarte a una base de datos MySQL utilizando una simple línea de comandos como esta:

Cómo exportar datos de MySQL a un archivo CSV

Para ello, utilice el siguiente comando:

mysql --host=localhost --user=username --password

Después, introduce tu contraseña:

Enter password: *******

¡Y ya está conectado!

Exportar los datos

Ahora vamos a exportar nuestros datos a un archivo CSV. Aquí está la tabla que será exportada:

Cómo exportar datos de MySQL a un archivo CSV

Y aquí está cómo exportar datos desde MySQL a un archivo CSV usando una herramienta de línea de comandos:

Cómo exportar datos de MySQL a un archivo CSV

Para ello, utilice una sentencia SELECT para seleccionar los datos que desea exportar y, al final, defina un archivo para almacenar los datos exportados:

SELECT *
FROM data.employees
INTO OUTFILE 'employees.csv';

Si está en Windows, lo más probable es que el archivo CSV esté disponible en C:\ProgramData\MySQL\MySQL Server 8.0\Data.

Vamos a intentar exportar datos que requieren una consulta un poco más complicada para ser recuperados de la base de datos. Aquí está la tabla que se exportará:

Cómo exportar datos de MySQL a un archivo CSV

Y aquí está cómo exportar datos desde MySQL a un archivo CSV utilizando la línea de comandos:

Cómo exportar datos de MySQL a un archivo CSV

Es análogo a la exportación anterior. Se define una sentencia SELECT y un fichero para almacenar los datos exportados:

SELECT e.Id, e.FirstName, e.LastName, e.SSN, ea.Street, ea.ZipCode,
       ea.City, ea.State, ea.Country
FROM data.employees e
JOIN data.employees_address ea
ON e.Id=ea.Id
INTO OUTFILE 'employees_addresses.csv';

INTO OUTFILE 'empleados_direcciones.csv';

Una vez más, si usted está en Windows, el archivo CSV es más probable que esté disponible en C:\ProgramData\MySQL\MySQL Server 8.0\Data.

Siga adelante e intente exportar otras tablas de datos utilizando la herramienta de línea de comandos.

Uso de la GUI

Conectando la Base de Datos

Vamos a conectarnos a MySQL utilizando su interfaz gráfica de usuario (GUI), MySQL Workbench.

MySQL Workbench le permite conectarse a cualquier base de datos haciendo clic en el signo + junto a Conexiones MySQL en la página de inicio. Aparecerá una ventana que le pedirá que proporcione los detalles de la conexión, como el nombre de la conexión, el método de conexión, el nombre de host, el puerto, el nombre de usuario y la contraseña.

Cómo exportar datos de MySQL a un archivo CSV

Una vez introducidos los detalles de la conexión, pruebe la conexión haciendo clic en el botón Probar conexión.

Si la prueba se realiza correctamente, aparecerá este mensaje:

Cómo exportar datos de MySQL a un archivo CSV

Exportar los datos

Ahora vamos a exportar nuestros datos a un archivo CSV. Esta es la tabla que se exportará:

Cómo exportar datos de MySQL a un archivo CSV

Y así es como se exportan los datos de MySQL a un archivo CSV utilizando la GUI de MySQL Workbench:

  1. Haga clic con el botón derecho en la tabla que desea exportar y seleccione Asistente de exportación de datos de tabla.
Cómo exportar datos de MySQL a un archivo CSV
  1. Defina los datos que desea exportar, como columnas, desplazamiento de filas (número de filas exportadas contadas desde abajo), recuento (número de filas exportadas contadas desde arriba).
Cómo exportar datos de MySQL a un archivo CSV
  1. Defina la ruta del archivo, el formato del archivo (aquí, csv), el separador de líneas(LF, CR o CR LF, dependiendo de su sistema operativo), el carácter en el que encerrar los valores de cadena y el separador valor/campo.
Cómo exportar datos de MySQL a un archivo CSV
  1. He aquí el resumen de las tareas de exportación:
Cómo exportar datos de MySQL a un archivo CSV
  1. Si la exportación se realiza correctamente, aparecerá este mensaje:
Cómo exportar datos de MySQL a un archivo CSV
  1. Y la pantalla final:
Cómo exportar datos de MySQL a un archivo CSV

El fichero exportado le está esperando en la ubicación definida.

Cómo exportar datos de MySQL a un archivo CSV

Intentemos exportar datos que requieren una consulta algo más complicada para ser recuperados de la base de datos. Para utilizar el Asistente de Exportación de Datos de Tabla, primero creamos una vista utilizando nuestra consulta compleja y luego exportamos esta vista.

Primero, creemos la vista:

CREATE VIEW data.employees_addresses AS (
SELECT e.Id, e.FirstName, e.LastName, e.SSN, ea.Street, ea.ZipCode,
       ea.City, ea.State, ea.Country
FROM data.employees e
JOIN data.employees_address ea
ON e.Id=ea.Id);

Ahora podemos exportar esta vista utilizando el Asistente de Exportación de Datos de Tabla, como antes, para obtener el archivo CSV.

Cómo exportar datos de MySQL a un archivo CSV Cómo exportar datos de MySQL a un archivo CSV

El proceso de importación es más fácil de realizar utilizando la interfaz gráfica de usuario. Sin embargo, el proceso de exportación es más fácil de realizar utilizando una herramienta de línea de comandos. Consulte nuestro artículo sobre cómo importar un archivo CSV a una base de datos MySQL para ver cómo realizar el proceso inverso.

¡Exportemos algunos datos!

Ahora ya sabe cómo exportar datos de MySQL a un archivo CSV. Y si siguió el artículo vinculado sobre cómo importar un archivo CSV a MySQL, también está familiarizado con el proceso de importación. ¡Pero eso es sólo para MySQL!

Para aprender sobre los procesos de exportación e importación de datos en otros motores de bases de datos, le animamos a consultar nuestros artículos sobre cómo importar archivos CSV a PostgreSQL utilizando PgAdmin y cómo exportar archivos CSV desde Microsoft SQL Server utilizando tanto una interfaz gráfica de usuario como una herramienta de línea de comandos.

¡Diviértase!