RE: Off topic? - Solution for a delimiter problem - Mailing list pgsql-general

From Jeff Eckermann
Subject RE: Off topic? - Solution for a delimiter problem
Date
Msg-id 08CD1781F85AD4118E0800A0C9B8580B094855@NEZU
Whole thread Raw
In response to Off topic? - Solution for a delimiter problem  (Andrew Gould <andrewgould@yahoo.com>)
List pgsql-general
Isn't this overkill?
Something like:
    sed -e 's/\" \"/^I/g' -e 's/\"//g' <file>
would do the job nicely.  I'm sure people on this list can suggest even
simpler ways (note: the "^I", or tab character, in the example is created by
typing Ctrl-V then Ctrl-I).
Sed has been (and is) my friend for many such cases.

> -----Original Message-----
> From:    Andrew Gould [SMTP:andrewgould@yahoo.com]
> Sent:    Wednesday, December 20, 2000 5:58 PM
> To:    Postgres Mailing List
> Subject:    Re: [GENERAL] Off topic? - Solution for a delimiter problem
>
> If space was used as the delimiter without accounting
> for the quotation marks, text fields might be broken
> apart whenever a space occurred.  For example, the
> street address "123 Sesame Street" might be split into
> 3 fields containing '"123', 'Sesame' and 'Street"'
> respectively.  In the past, I imported the file into
> MySQL, then exported the data into a tab delimited
> text file for importing into PostgreSQL.
>
> The Python script saves many steps; so I was offering
> it up for use and improvement by others.  I didn't
> know if I should post the script to the mailing list
> or send it directly to people who are interested.
> (It's only 1k.)
>
> Andrew Gould
>
> --- "Poul L. Christiansen" <poulc@cs.auc.dk> wrote:
> > Maybe you can specify the delimiter to be space.
> >
> > radius=# \h copy
> > Command:     COPY
> > Description: Copies data between files and tables
> > Syntax:
> > COPY [ BINARY ] table [ WITH OIDS ]
> >     FROM { 'filename' | stdin }
> >     [ [USING] DELIMITERS 'delimiter' ]
> >     [ WITH NULL AS 'null string' ]
> > COPY [ BINARY ] table [ WITH OIDS ]
> >     TO { 'filename' | stdout }
> >     [ [USING] DELIMITERS 'delimiter' ]
> >     [ WITH NULL AS 'null string' ]
> >
> > That would probably be COPY table FROM filename
> > USING DELIMITERS ' ';
> >
> > HTH,
> > Poul L. Christiansen
> >
> > Andrew Gould wrote:
> >
> > > I receive space delimited files that have spaces
> > > within double quoted text fields.
> > >
> > > Since PostgreSQL's COPY doesn't deal with multiple
> > > delimiters, I've written a crude Python script to
> > > convert the files to a tab delimited format
> > without
> > > the double quotes and without disturbing the
> > spaces
> > > within text fields.  I'm sure someone could make
> > it
> > > more efficient.  (Probably by rewriting it in
> > Perl.)
> > >
> > > Does anyone else need the script?  Is the script
> > > something I can/should post?
> > >
> > > Andrew Gould
>
> __________________________________________________
> Do You Yahoo!?
> Yahoo! Shopping - Thousands of Stores. Millions of Products.
> http://shopping.yahoo.com/

pgsql-general by date:

Previous
From: "J. 'FIK'Brand"
Date:
Subject: ODBC, Access and foreign key (part 2)
Next
From: fabrizio.ermini@sysdat.it
Date:
Subject: Could somebody EXPLAIN? :-)