Reputation: 1
I am trying to execute a query
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
it shows
SQL Error: ORA-00905: missing keyword
00905. 00000 - "missing keyword"
Upvotes: 0
Views: 63
Reputation: 13496
Two solutions possible:
Give the inline table an alias
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
Use the table SEQ_APP_TIN_MAP
directly instead of an inline table
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
Upvotes: 1