Re: Importar fichero CSV

From: Javier Estévez CIFA Córdoba <javier(dot)estevez(dot)ext(at)juntadeandalucia(dot)es>
To: "Alvaro Herrera" <alvherre(at)commandprompt(dot)com>, "Mario Gonzalez" <gonzalemario(at)gmail(dot)com>
Cc: "Javier Carlos" <javier(at)nediam(dot)com(dot)mx>, <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Importar fichero CSV
Date: 2007-04-02 07:08:54
Message-ID: 003401c774f5$c67a45a0$6d64460a@cfco04.cap.juntaandalucia.es
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Es fácil saberlo pues en mi archivo .DAT (estructura CSV), las líneas con
más columnas el valor de la primera columna siempre es 201 y las líneas con
el mismo número de columnas el primer valor es 222.
Mi archivo es algo así:

222,75,1230,1,2,3,4,5,6,7,8,9
222,75,1300,1,2,3,4,5,6,7,8,9
222,75,1330,1,2,3,4,5,6,7,8,9
201,75,2400,1,2,3,4,5,6,7,8,9,10,11,12
222,76,1230,1,2,3,4,5,6,7,8,9
222,76,1300,1,2,3,4,5,6,7,8,9

...

----- Original Message -----
From: "Alvaro Herrera" <alvherre(at)commandprompt(dot)com>
To: "Mario Gonzalez" <gonzalemario(at)gmail(dot)com>
Cc: "Javier Carlos" <javier(at)nediam(dot)com(dot)mx>; "Javier Estévez CIFA Córdoba"
<javier(dot)estevez(dot)ext(at)juntadeandalucia(dot)es>; <pgsql-es-ayuda(at)postgresql(dot)org>
Sent: Friday, March 30, 2007 4:39 PM
Subject: Re: [pgsql-es-ayuda] Importar fichero CSV

Mario Gonzalez escribió:
> On 30/03/07, Alvaro Herrera <alvherre(at)commandprompt(dot)com> wrote:
> >
> >Lo que yo haria seria un programa en shell (quizas en awk? o en perl)
> >que divida el archivo y arroje las lineas a dos archivos separados, y
> >luego haria COPY de los dos archivos de salida.
>
> Usando el mismo archivo CSV que mostre de ejemplo, algo en shell
> como lo que dice Alvaro:
>
> mario(at)mario:~$ cut -d , -f1,2 archivo_csv
> 1,2
> 4,5
> 7,8
>
> mario(at)mario:~$ cut -d , -f3 archivo_csv
> 3
> 6
> 9

No no, entiendo que el problema es que el OP tiene un archivo que es
algo asi:

1,2,3
4,5,6
7,8,9,10,11
2,3,4
3,4,5
3,4,5,6,7

Entonces el asunto es que hay que poner las lineas 1, 2, 4 y 5 en una
tabla, y las lineas 3 y 6 en otra. El problema es saber cuales lineas
tienen 3 columas y cuales tienen 5. Puntos extra si recorres el archivo
completo solo una vez.

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Javier Estévez CIFA Córdoba 2007-04-02 07:13:34 Re: Sentencia SQL para dos registros por grupo
Previous Message Espartano 2007-04-01 23:59:30 Re: IRC