Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

Re^2: Extract Column of CSV - pretend its a database.

by erix (Vicar)
on Jun 26, 2013 at 15:46 UTC ( #1040808=note: print w/ replies, xml ) Need Help??


in reply to Re: Extract Column of CSV - pretend its a database.
in thread Extract a column of csv

Why pretend? Assuming these two csv lines:

11,22,33,"ABC" 1111,3333,4444,"asdfasd asdfasdfasdf"

And assuming you have the file_fdw extension installed ( create extension file_fdw; ), you could have Pg query it via:

create server pgcsv foreign data wrapper file_fdw; create foreign table pgcsv ( col1 int, col2 int, col3 int, col4 text ) server pgcsv options ( filename '/tmp/pm-1040691.csv', format 'csv' ); select * from pgcsv; -- or a single column, of course...

which will output:

CREATE SERVER CREATE FOREIGN TABLE col1 | col2 | col3 | col4 ------+------+------+---------------------- 11 | 22 | 33 | ABC 1111 | 3333 | 4444 | asdfasd asdfasdfasdf

Obviously not the easiest way to go about it (and on top of that, postgres is rather picky about the text's precise format). I'm just showing this because you brought up "database" ;)


Comment on Re^2: Extract Column of CSV - pretend its a database.
Select or Download Code
Re^3: Extract Column of CSV - pretend its a database.
by space_monk (Chaplain) on Jun 26, 2013 at 18:11 UTC

    Well thats one idea. I presume though you'd need the psql client installed on your PC. Your answer is ingenious but not Perl :-)

    If you spot any bugs in my solutions, it's because I've deliberately left them in as an exercise for the reader! :-)

      You would need much more than psql (which in fact you do not really need); you would need a running postgresql server to talk to. The talking would be done via DBI.

      But again; not really recommended for the OP (or I would have made a DBI example), just a demo for fun :)

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1040808]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (6)
As of 2014-12-27 03:22 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (176 votes), past polls