या तो CSV फ़ाइल को पूर्व-संसाधित करें, या (मैं शायद क्या करूँगा) लक्ष्य तालिका की एक अस्थायी प्रतिलिपि में आयात करें और INSERT
दूसरे चरण में केवल चयनित कॉलम:
CREATE TEMP TABLE tmp AS SELECT * FROM target_table LIMIT 0;
ALTER TABLE tmp ADD COLUMN etra_column1 text
, ADD COLUMN etra_column2 text; -- add excess columns
COPY tmp FROM '/path/tp/file.csv';
INSERT INTO target_table (col1, col2, col3)
SELECT col1, col2, col3 FROM tmp -- only reelvant columns
WHERE ... -- optional, to also filter rows
सत्र के अंत में एक अस्थायी तालिका स्वचालित रूप से हटा दी जाती है। यदि प्रसंस्करण में अधिक समय लगता है, तो एक नियमित तालिका का उपयोग करें।