我在这里有一个Oracle查询:
UPDATE metadata.bp_assets
SET (ASSET_RID, CONTAINER_RID, ASSET_NAME, ASSET_SUBTYPE) = (
select max(METADATA.BP_ASSET_TO_CLUSTER.ASSET_RID),
max(AD.CONTAINER_RID),
max(AD.NAME_XMETA),
max(AD.SUBTYPE_XMETA)
from asclmodel_datafield AD
join metadata.bp_asset_to_cluster ATC
on AD.xmeta_repos_object_id_xmeta = ATC.asset_rid
WHERE METADATA.BP_ASSET_TO_CLUSTER.ASSET_RID = XMETA_REPOS_OBJECT_ID_XMETA
)
,在底部的WHERE子句中,我收到ORA-00904无效标识符错误。我什至尝试只运行没有UPDATE和SET的select部分,仍然没有运气。如果我尝试仅查询列本身,则工作正常。没有其他SO答案的运气。
编辑:对不起,忘记提到该错误是在METADATA.BP_ASSET_TO_CLUSTER.ASSET_RID列上。