Điều này dường như hoạt động (nó vẫn hoạt động với một truy vấn đơn giản bằng cách sử dụng 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)
);
Về lý do tại sao nó không hoạt động nếu truy vấn con bắt đầu bằng "WITH", tôi chỉ có thể tưởng tượng rằng đó là do các nhà thiết kế của Oracle SQL đã không lường trước được cách sử dụng này.