Du behöver ingen markör för detta, du behöver inte plpgsql, du behöver inte ens en datamodifierande CTE vilket skulle tillåta dig att göra det i en enda SQL-sats.
Kör bara två vanliga INSERT
uttalanden . Lägg dem i en transaktion om du vill se till att allt eller inget tillämpas:
BEGIN;
INSERT INTO B (col1, col2)
SELECT col1, col2
FROM A
WHERE col_cond = 'something';
INSERT INTO C (col1, col2)
SELECT col1, col2
FROM A
WHERE col_cond IS DISTINCT FROM 'something';
COMMIT;