Get it on Google Play
Tu partner Freelance para tus proyectos IT

Importar/Exportar datos CSV | Análisis de datos con MariaDB desde 0

23-12-2020
CSV a MariaDB

CSV a MariaDB

Las bases de datos SQL son excelentes herramientas para el análisis de datos con herramientas para calcular, agrupar, filtrar, etc. con una potencia mucho mayor que una simple hoja de cálculo. Empezamos esta serie de posts con lo mas básico y con lo que mucha gente tiene problemas para empezar, la importación y exportación de datos con CSV(Uno de los formatos líderes para mover datos).

Supongamos que tenemos un fichero CSV con datos sobre el rendimiento de mis últimos vídeo de Youtube. Los campos se pueden guardar en la siguiente tabla:

CREATE TABLE subs (
    vid	varchar(45),
    titulo longtext,
    hora_publicacion varchar(45),
    subs_perdidos int(11),
    subs_ganados int(11),
    visualizaciones	int(11),
    duracion_horas decimal(10,4),
    duracion_media varchar(45),
    likes varchar(45),
    compartido int(11)
    ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=latin1;

Cargar datos CSV que tenemos guardado en el fichero ‘/datos.csv’ es tan fácil como:

LOAD DATA INFILE '/datos.csv' 
	INTO TABLE subs
	FIELDS TERMINATED BY ',' 
	ENCLOSED BY '"'
	LINES TERMINATED BY '\n'
	IGNORE 1 ROWS;

También podemos hacerlo por línea de comandos usando el comando ‘mysqlimport’:

mysqlimport -uroot -proot -h172.17.0.3 youtube /subs.csv --fields-terminated-by=, --fields-optionally-enclosed-by='"'

Y finalmente podemos exportar cualquier ‘select’ añadiendo ‘into outfile’ a la sentencia, por ejemplo:

SELECT max(subs_ganados),max(subs_perdidos)
	INTO OUTFILE '/data/datos2.csv' 
		FIELDS TERMINATED BY ',' 
        		OPTIONALLY ENCLOSED BY '"'
		LINES TERMINATED BY '\n'
	FROM youtube.subs;

Tip fácil y rápido, comentad si queréis que siga con la creación de cubos olap. Felices fiestas y próspero año nuevo.

Si te ha servido, por favor comparte
 

Leave a Reply