sql >> Database >  >> RDS >> PostgreSQL

in roodverschuiving postgresql kan ik kolommen overslaan met de kopieerfunctie

Als u het voorbewerkingsgedeelte wilt overslaan, kunt u de kolom definiëren die moet worden overgeslagen als CHAR(1) en gebruik dan een TRUNCATECOLUMNS parameter naar een COPY commando:

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

De TRUNCATECOLUMNS negeert alle gegevens die langer zijn dan gedefinieerd in een tabelschema tijdens het importeren, dus alle gegevens in die kolom worden afgekapt tot 1 teken.

Dat is slechts een hack, het voorbewerken van het invoerbestand wordt aanbevolen, maar soms is een hack alles wat nodig is.



  1. voeg meerdere waarden in één attribuut in

  2. PostgreSQL 'NIET IN' en subquery

  3. Installeer RPostgreSQL op RHEL 6.5 libpq-fe.h Fout

  4. java.net.InetAddress java-klasse lost geen IP op in Alpine Docker-container