msz*_*aro 4 oracle join insert ora-00947
我正在尝试执行以下操作:
INSERT INTO MyTable(a, b, c)
SELECT a FROM source1
JOIN source2 ON ...
Run Code Online (Sandbox Code Playgroud)
其中source2包含B列和C列.
但是Oracle似乎并不喜欢这样,并且告诉我"SQL错误:ORA-00947:没有足够的值".
我在这里做错了吗?这种语法甚至可能吗?或者我必须将其重写为:
SELECT a, b, c FROM source1, source2 WHERE ....
Run Code Online (Sandbox Code Playgroud)
谢谢!
Vin*_*rat 11
在SELECT子句中使用与INSERT子句中一样多的标识符,如:
INSERT INTO MyTable(a, b, c)
SELECT s1.a, s2.b, s2.c FROM source1 s1
JOIN source2 s2 ON ...
Run Code Online (Sandbox Code Playgroud)