我正在尝试执行查询
merge into RAWREQUEST
using ( select APP_TXN_SEQ_ID,APP_TXN_ID from SEQ_APP_TIN_MAP )
on (RAWREQUEST.app_txn_id=SEQ_APP_TIN_MAP.app_txn_id )
WHEN MATCHED THEN UPDATE set RAWREQUEST.app_txn_id = SEQ_APP_TIN_MAP.APP_TXN_SEQ_ID
显示
SQL Error: ORA-00905: missing keyword
00905. 00000 - "missing keyword"
答案 0 :(得分:1)
可能的两种解决方案:
为内联表提供别名
merge into RAWREQUEST
using ( select APP_TXN_SEQ_ID,APP_TXN_ID from SEQ_APP_TIN_MAP ) t
on (RAWREQUEST.app_txn_id = t.app_txn_id )
WHEN MATCHED THEN UPDATE set RAWREQUEST.app_txn_id = t.APP_TXN_SEQ_ID
直接使用表SEQ_APP_TIN_MAP
而不是内联表
merge into RAWREQUEST
using SEQ_APP_TIN_MAP
on (RAWREQUEST.app_txn_id=SEQ_APP_TIN_MAP.app_txn_id )
WHEN MATCHED THEN UPDATE set RAWREQUEST.app_txn_id = SEQ_APP_TIN_MAP.APP_TXN_SEQ_ID