From: Richard Broersma Jr <rabroersma@yahoo.com>
To: Steve Midgley <public@misuse.org>
To: pgsql-sql@postgresql.org
Subject: Re: "Copy from" omit source columns?
Date: Tue, 21 Nov 2006 14:38:43 -0800 (PST)
Message-ID: <737014.20604.qm@web31801.mail.mud.yahoo.com> (raw)
In-Reply-To: <20061121221911.C10D09FB26E@postgresql.org>
> (I already fear the answer to my question is "no..") :)
> I am using the 'COPY FROM' SQL command (not psql \copy) to move data
> into a table from a CSV file. The source data are suitable for import
> EXCEPT there are extraneous columns of data in the source file. In
> essence, my table schema is:
> id, col1, col2, col4
> My source file schema is:
> col1,col2,col3,col4
> I'm curious if there is any way to tell "COPY" to ignore the third
> column of data? Basically I'd like to write something along the lines
> of:
> copy import (col1,col2,\n,col4)
> from 'c:/dev/import/source/test.csv'
> with CSV HEADER
> Note "\n" would indicate there there is a column in the source that
> should simply be ignored during the import. Of course, I tried this
> syntax and it didn't work. Perhaps there is another way of indicating
> that there is a "null column" in the source file that should be skipped
> during import?
> Any assistance in solving this problem (without having to change the
> source file) would be greatly appreciated. If I have to change the
> source file, I will, but it would greatly simplify things if I didn't
> have to..
I am not to familiar with using copy, so I do not know the eligant solution that you are looking
for. But the brute-force method would be to:
1) push all your data into a temp table
2) validate it
3) push the data of enterest into the destination table.
Regards,
Richard Broersma Jr.
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: rabroersma@yahoo.com, public@misuse.org
Subject: Re: "Copy from" omit source columns?
In-Reply-To: <737014.20604.qm@web31801.mail.mud.yahoo.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox