PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come importare file CSV in PostgreSQL

Spesso è necessario importare il file CSV nella tabella PostgreSQL per eseguire query e analisi. Ecco come importare il file CSV in PostgreSQL, insieme alla sua intestazione. Useremo copia comando per importare CSV in PostgreSQL.

Come importare file CSV in PostgreSQL

Ecco i passaggi per importare il file CSV in PostgreSQL. Dopo aver importato il file CSV con intestazione in PostgreSQL, puoi utilizzare uno strumento di reportistica postgresql per interrogare la tua tabella PostgreSQL e assicurarti che tutto funzioni correttamente.

1. Crea tabella

Innanzitutto, creeremo una tabella PostgreSQL per importare CSV. Supponiamo che tu voglia importare un file CSV che ha 2 campi:data_ordine, vendita

Creeremo un vendita (data_ordine, vendita) tabella usando psql.

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

Bonus Leggi:Come calcolare la crescita mese dopo mese in PostgreSQL

2. Importa file CSV in PostgreSQL

Successivamente, importiamo il file CSV in PostgreSQL utilizzando copy comando.

Importa file CSV senza intestazione in PostgreSQL

Abbiamo il seguente file sales.csv. Si prega di utilizzare virgolette singole/doppie per i valori di data nel file CSV, altrimenti verrà visualizzato un errore.

'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

Bonus Lettura:come creare una tabella pivot in PostgreSQL

Importa file CSV con intestazione in PostgreSQL

In questo caso, abbiamo il seguente file sales.csv che include l'intestazione. Si prega di utilizzare virgolette singole/doppie per i valori di data nel file CSV, altrimenti verrà visualizzato un errore.

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

Bonus Leggi:Come calcolare il tasso di conservazione in SQL

Puoi utilizzare le stesse query con file CSV o TXT. Tieni presente che potresti aver bisogno dei privilegi di superutente per importare CSV con intestazione. Questo è il motivo per cui usiamo \COPY invece di solo COPY, sopra. Dopo aver importato il file CSV, puoi utilizzare uno strumento di reportistica postgresql come Ubiq per tracciarli in grafici a linee/colonne come mostrato di seguito.

A proposito, se vuoi creare grafici e dashboard per monitorare la tua attività o il tuo sito web, puoi provare Ubiq. Offriamo una prova gratuita di 14 giorni.