Oracle のマージで WITH 句を機能させようとしていますが、何らかの理由で機能しません。それは明らかなことだと確信していますが、私はそれを見たことがないだけです。
-- behold, the wonders of fake data
WITH X AS (
SELECT
'moo' AS COW,
'woof' AS CAT,
(SELECT MAX( DECIBELS ) FROM ANIMALIA WHERE COW = 'moo' ) AS DECIBELS
FROM DUAL )
MERGE INTO ANIMALIA D
USING X
WHEN MATCHED THEN
UPDATE SET D.COW = X.COW;
編集
私は実際にこれを管理する方法を見つけました(質問を送信する前に)が、答えを見つけるのにかなりの時間がかかったので、この質問をそのままにしておくことは、次の人がそうではないことを意味することを意味すると思います多くの時間。
1 日かそこらで回答を投稿しますが、その間に他の誰かが投稿するとポイントを獲得できます。