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

in redshift postgresql kann ich spalten mit der kopierfunktion überspringen

Wenn Sie den Vorverarbeitungsteil überspringen möchten, können Sie die zu überspringende Spalte als CHAR(1) definieren und dann ein TRUNCATECOLUMNS verwenden Parameter zu einem COPY Befehl:

CREATE TABLE t1a (
  c1,
  c2 CHAR(1),
  c3
);
COPY t1a FROM t1 TRUNCATECOLUMNS

Die TRUNCATECOLUMNS ignoriert alle Daten, die länger als in einem Tabellenschema definiert sind, während des Imports, sodass alle Daten in dieser Spalte auf 1 Zeichen gekürzt werden.

Das ist nur ein Hack, die Vorverarbeitung der Eingabedatei wird empfohlen, aber manchmal ist ein Hack alles, was benötigt wird.