insertar si no existe oracle

Necesito poder ejecutar una consulta de Oracle que inserte un número de filas, pero también verifica si existe una clave principal y, en caso afirmativo, se salta esa inserción. Algo como:

INSERT ALL
    IF NOT EXISTS( SELECT 1 WHERE fo.primary_key='bar' )
    (
        INSERT INTO 
            schema.myFoo fo ( primary_key, value1, value2 )
        VALUES
            ('bar','baz','bat')
    ),

    IF NOT EXISTS( SELECT 1 WHERE fo.primary_key='bar1' )
    (
        INSERT INTO 
            schema.myFoo fo ( primary_key, value1, value2 )
        VALUES
            ('bar1','baz1','bat1')
    )
SELECT * FROM schema.myFoo;

¿Es esto posible con Oracle?

Puntos de bonificación si puedes decirme cómo hacerlo en PostgreSQL o MySQL.

Respuestas a la pregunta(10)

Su respuesta a la pregunta