Em 12/11/12, Mariana Hansen<[email protected]> escreveu:
> Boa noite a todos.
>
> Recentemente mexendo com o mysql me pediram para que eu importasse os dados
> de um arquivo CSV para uma tabela:
>
> CSV -> tabela
>
> Sendo que se o id da chave já existir, se ouver mudanças no resto fazer o
> update.
> Se tiver registros a mais; inserir.
>
> Pois bem...
>
> Resolvi o caso usando no mysql
>
> LOAD DATA ... REPLACE;
>
> No mysql, esse "REPLACE" foi minha palavra salvadora...
> Gostaria de saber como no nosso glorioso Postgres podemos fazer o mesmo
> elegantemente.
> Já consultei a documentação sobre o comando COPY e infelizmente não tem.
>


Está na TODO List:

Add SQL-standard MERGE/REPLACE/UPSERT command

    MERGE is typically used to merge two tables. REPLACE or UPSERT
command does UPDATE, or on failure, INSERT. See SQL MERGE for notes on
the implementation details.

http://wiki.postgresql.org/wiki/Todo

Como uma possível alternativa, dentre outras, veja o exemplo 39-2 em:
http://www.postgresql.org/docs/current/interactive/plpgsql-control-structures.html

Osvaldo
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a