【发布时间】:2015-11-10 09:49:19
【问题描述】:
我有一个名为 Andamio(命运表)的表,其中包含以下列:
CODTIPOLOCALIZACION
TXTNOMBRE
CODLOCALIZACION
CODCENTRO
CODPUBLICO
TXTDESCRIPCION
还有一个叫做 Centro(原始的),有这些列:
CODCENTRO
CODPARKING
TXTPARKING
我想在前两列中用相同的值填充所有行:
CODTIPOLOCALIZACION = 2 for all
TXTNOMBRE = "Park" for all
第三列来自自动序列:'MySeq_seq'
CODLOCALIZACION = MySeq_seq.NEXTVAL
最后三列必须与原始表“Centro”相同,但条件是命运表“Andamio”中没有其他行具有相同的 CODCENTRO 和 CODPUBLICO 值等于 CODCENTRO 和 CODPARKING .
INSERT INTO ANDAMIO
(CODTIPOLOCALIZACION, TXTNOMBRE, CODLOCALIZACION, CODCENTRO, CODPUBLICO,
TXT_DESCRIPCION)
SELECT '2', 'Park', MySeq_seq.NEXTVAL, Datos.CODCENTRO, Datos.CODPARKING, Datos.TXTPARKING
FROM (SELECT CODCENTRO, CODPARKING, TXTPARKING FROM CENTRO centrop
WHERE (centrop.CODCENTRO <> ANDAMIO.CODCENTRO
AND centrop.CODPARKING <> ANDAMIO.CODPUBLICO)) Datos
我已经尝试了这些 INSERT INTO 序列有很多变体 [使用 INSERT INTO 表 VALUES ('2', 'Park', SELECT(...))] 和许多其他... 我总是得到 Invalid Identifier,因为 Oracle 声称表 Andamio 中没有名为 CODPUBLICO 的列,但它确实存在。
任何帮助将不胜感激。 谢谢!
【问题讨论】:
标签: oracle