Wygląda na to, że to działa (w każdym razie udało się to z prostym zapytaniem przy użyciu DUAL):
UPDATE Table_A SET (Col_One, Col_Two) = (select col_one, col_two from
(WITH OneValue AS (SELECT DISTINCT t.Col_One, T.Col_two
FROM Table_Two t, Table_A a
WHERE t.id = a.New_Id))
SELECT Col_One, Col_Two FROM OneValue)
);
Co do tego, dlaczego to nie działa, jeśli podzapytanie zaczyna się od „Z”, mogę sobie tylko wyobrazić, że dzieje się tak dlatego, że projektanci Oracle SQL nie przewidzieli takiego użycia.