PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

So importieren Sie eine CSV-Datei in PostgreSQL

Häufig müssen Sie CSV-Dateien zur Abfrage und Analyse in eine PostgreSQL-Tabelle importieren. So importieren Sie eine CSV-Datei zusammen mit ihrem Header in PostgreSQL. Wir verwenden copy Befehl zum Importieren von CSV in PostgreSQL.

So importieren Sie eine CSV-Datei in PostgreSQL

Hier sind die Schritte zum Importieren einer CSV-Datei in PostgreSQL. Nachdem Sie die CSV-Datei mit Header in PostgreSQL importiert haben, möchten Sie möglicherweise ein Postgresql-Berichtstool verwenden, um Ihre PostgreSQL-Tabelle abzufragen und sicherzustellen, dass alles gut funktioniert.

1. Tabelle erstellen

Zuerst erstellen wir eine PostgreSQL-Tabelle, um CSV zu importieren. Angenommen, Sie möchten eine CSV-Datei importieren, die 2 Felder enthält – Bestelldatum, Verkauf

Wir erstellen einen Verkauf (Bestelldatum, Verkauf) Tabelle mit psql.

postgres=# Tabelle sales(order_date date, sale int);
erstellen

Bonuslektüre:So berechnen Sie das Wachstum von Monat zu Monat in PostgreSQL

2. CSV-Datei in PostgreSQL importieren

Als Nächstes importieren wir die CSV-Datei mit Kopieren in PostgreSQL Befehl.

CSV-Datei ohne Header in PostgreSQL importieren

Wir haben die folgende sales.csv-Datei. Bitte verwenden Sie einfache/doppelte Anführungszeichen für Datumswerte in Ihrer CSV-Datei, sonst erhalten Sie eine Fehlermeldung.

'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; Bestelldatum | Verkauf------------+------ 2020-01-01 | 15 02.01.2020 | 25 03.01.2020 | 34 04.01.2020 | 22 05.01.2020 | 30

Bonuslektüre:So erstellen Sie eine Pivot-Tabelle in PostgreSQL

CSV-Datei mit Header in PostgreSQL importieren

In diesem Fall haben wir die folgende sales.csv-Datei, die einen Header enthält. Bitte verwenden Sie einfache/doppelte Anführungszeichen für Datumswerte in Ihrer CSV-Datei, sonst erhalten Sie eine Fehlermeldung.

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; Bestelldatum | Verkauf------------+------ 2020-01-01 | 15 02.01.2020 | 25 03.01.2020 | 34 04.01.2020 | 22 05.01.2020 | 30

Bonus-Lesetext:So berechnen Sie die Retentionsrate in SQL

Sie können die gleichen Abfragen mit CSV- oder TXT-Dateien verwenden. Bitte beachten Sie, dass Sie möglicherweise Superuser-Rechte benötigen, um CSV mit Header zu importieren. Deshalb verwenden wir oben \COPY statt nur COPY. Nachdem Sie eine CSV-Datei importiert haben, können Sie ein Postgresql-Berichtstool wie Ubiq verwenden, um sie wie unten gezeigt in Linien-/Säulendiagrammen darzustellen.

Übrigens, wenn Sie Diagramme und Dashboards erstellen möchten, um Ihr Unternehmen oder Ihre Website zu überwachen, können Sie Ubiq ausprobieren. Wir bieten eine 14-tägige kostenlose Testversion an.