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

en redshift postgresql ¿puedo omitir columnas con la función de copia?

Si desea omitir la parte de preprocesamiento, puede definir la columna que se omitirá como CHAR(1) y luego use un TRUNCATECOLUMNS parámetro a un COPY comando:

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

Las TRUNCATECOLUMNS ignora todos los datos que son más largos que los definidos en un esquema de tabla durante la importación, por lo que todos los datos en esa columna se truncarán en 1 carácter.

Eso es solo un truco, se recomienda preprocesar el archivo de entrada, pero a veces un truco es todo lo que se necesita.