sql >> Base de Datos >  >> RDS >> PostgreSQL

Cómo importar un archivo CSV en PostgreSQL

A menudo, necesita importar un archivo CSV a la tabla de PostgreSQL para realizar consultas y análisis. Aquí se explica cómo importar un archivo CSV en PostgreSQL, junto con su encabezado. Usaremos copiar comando para importar CSV a PostgreSQL.

Cómo importar un archivo CSV en PostgreSQL

Estos son los pasos para importar un archivo CSV en PostgreSQL. Después de importar el archivo CSV con el encabezado a PostgreSQL, es posible que desee utilizar una herramienta de generación de informes de PostgreSQL para consultar su tabla de PostgreSQL y asegurarse de que todo funcione correctamente.

1. Crear tabla

Primero, crearemos una tabla PostgreSQL para importar CSV. Digamos que desea importar un archivo CSV que tiene 2 campos:order_date, sale

Crearemos un ventas (fecha_pedido, venta) tabla usando psql.

postgres=# create table sales(order_date date, sale int);

Lectura adicional:Cómo calcular el crecimiento mes a mes en PostgreSQL

2. Importar archivo CSV en PostgreSQL

A continuación, importamos el archivo csv a PostgreSQL usando copiar comando.

Importar archivo CSV sin encabezado en PostgreSQL

Tenemos el siguiente archivo sales.csv. Utilice comillas simples/dobles para los valores de fecha en su archivo CSV, de lo contrario obtendrá un error.

'2020-01-01',15
'2020-01-02',25
'2020-01-03',34
'2020-01-04',22
'2020-01-05',30
postgres=# COPY sales FROM 'c:/files/sales.csv' WITH (FORMAT csv);

postgres=# select * from sales;
 order_date | sale
------------+------
 2020-01-01 |   15
 2020-01-02 |   25
 2020-01-03 |   34
 2020-01-04 |   22
 2020-01-05 |   30

Lectura adicional:Cómo crear una tabla dinámica en PostgreSQL

Importar archivo CSV con encabezado en PostgreSQL

En este caso, tenemos el siguiente archivo sales.csv que incluye encabezado. Utilice comillas simples/dobles para los valores de fecha en su archivo CSV, de lo contrario obtendrá un error.

order_date,sale
'2020-01-01',15
'2020-01-02',25
'2020-01-03',34
'2020-01-04',22
'2020-01-05',30
postgres=# \COPY sales FROM 'c:/files/sales.txt' DELIMITER ',' CSV HEADER;

postgres=# select * from sales;
 order_date | sale
------------+------
 2020-01-01 |   15
 2020-01-02 |   25
 2020-01-03 |   34
 2020-01-04 |   22
 2020-01-05 |   30

Lectura adicional:Cómo calcular la tasa de retención en SQL

Puede utilizar las mismas consultas con archivos CSV o TXT. Tenga en cuenta que es posible que necesite privilegios de superusuario para importar CSV con encabezado. Es por eso que usamos \COPY en lugar de solo COPY, arriba. Después de importar el archivo CSV, puede usar una herramienta de informes postgresql como Ubiq para trazarlos en gráficos de líneas/columnas como se muestra a continuación.

Por cierto, si desea crear gráficos y paneles para monitorear su negocio o sitio web, puede probar Ubiq. Ofrecemos una prueba gratuita de 14 días.