O Postgres 9.5 (lançado desde 2016-01-07) oferece um comando "upsert", também conhecido como cláusula ON CONFLICT para INSERT:
INSERT ... ON CONFLICT DO NOTHING/UPDATE
Ele resolve muitos dos problemas sutis que você pode encontrar ao usar a operação simultânea, que algumas outras respostas propõem.