PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

प्रोग्राम से कॉपी को अज्ञात कॉलम के साथ एक गतिशील तालिका में पोस्ट करें

चूँकि आप पंक्तियों की संख्या/प्रकार पहले से नहीं जानते हैं, तो मेरा सुझाव है कि आप ऐसा करें:

  • (1) अपने सीएसवी को एक (अस्थायी?) तालिका में बिना विभाजन के एकल टेक्स्ट कॉलम के साथ आयात करें। backspace का उपयोग करें एक सीमांकक के रूप में चरित्र ताकि पूरी आयातित लाइन बरकरार रहे;
CREATE TABLE IF NOT EXISTS rawtext_t (rawtext text);
COPY rawtext_t FROM <file_name> WITH (format 'csv', delimiter E'\b');
WITH rawdata AS
(
 SELECT parse_csv(rawtext) arr FROM rawtext_t
) 
INSERT INTO real_t (...fields...) 
SELECT arr[1], arr[3], ...
FROM rawdata;

TRUNCATE TABLE rawtext_t;

आप एक WHERE जोड़ सकते हैं दूसरे में खंड SELECT यदि आवश्यक हो तो आने वाली पंक्तियों को फ़िल्टर करने के लिए कथन।

दूसरा विकल्प - मेरी समझ में एक बहुत अच्छा है - उत्कृष्ट file_textarray_fdw का उपयोग करना है कमोबेश उसी प्रभाव के लिए।

आशा है कि इससे आपको विचार और सहायता मिलती है।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कई कॉलम में `समूह द्वारा` परिणाम बनाना

  2. मैं गो ऐप में डीबी कनेक्शन खोलने/बंद करने का प्रबंधन कैसे करूं?

  3. PostgreSQL क्वेरी इंडेक्स स्कैन के साथ तेजी से चलती है, लेकिन इंजन हैश जॉइन चुनता है

  4. PITR करते समय, क्या PostgreSQL में विराम देना/फिर से शुरू करना संभव होगा?

  5. PostgreSQL में एक ऑटो इंक्रीमेंट प्राथमिक कुंजी को कैसे परिभाषित करें