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

गतिशील फ़ाइल नाम के साथ sql फ़ंक्शन से csv फ़ाइल (COPY) में आउटपुट सहेजें

PLPGSQL का उपयोग करके एक साथ जल्दी से हैक किया गया उदाहरण इसके बजाय SQL

चेतावनी:एक सुपरयुसर के रूप में बनाया जाना चाहिए।

फ़ंक्शन में क्वेरी आदि को अपनी ज़रूरत के अनुसार बदलें, और आप अपनी क्वेरी या आउटपुट फ़ाइल (फ़ाइलों) को अलग-अलग तरीके से बनाने के लिए फ़ंक्शन में अधिक इनपुट पैरामीटर जोड़ सकते हैं, जो उन इनपुट मापदंडों पर निर्भर करता है।

CREATE OR REPLACE FUNCTION copy_out_example ( p_path TEXT, p_filename_prefix TEXT, OUT file_and_path TEXT )
RETURNS TEXT AS
$func$
DECLARE
    qry TEXT;
BEGIN
    file_and_path := RTRIM(p_path,'/') || '/' || p_filename_prefix || '_' || ceil(random() * 1000000)::TEXT || '.csv';

    qry := FORMAT('COPY (select * from pg_catalog.pg_class) TO %L CSV HEADER',file_and_path);
    EXECUTE qry;
END;
$func$ LANGUAGE plpgsql STRICT SECURITY DEFINER;

SELECT copy_out_example('/path/to/the/file','some_test_file');

'/path/to/the/file/some_test_file_994216.csv' जैसी फ़ाइल में परिणाम




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL में एक स्ट्रिंग को एक संख्यात्मक मान में कैसे बदलें

  2. हेरोकू और रेल:पोस्टग्रेज के साथ जेम लोड त्रुटि, हालांकि यह GEMFILE में निर्दिष्ट है

  3. रेल पर रूबी/पीजीएसक्यूएल त्रुटि प्रारंभ:ऐसी फ़ाइल लोड नहीं कर सकता - pg_ext (LoadError)

  4. अल्पविराम से अलग किए गए कॉलम डेटा को अतिरिक्त कॉलम में विभाजित करें

  5. PostgreSQL कनेक्शन नोडज के लिए एसएसएल