После выполнения вышеуказанного SQL отображается 0 Объединенная запись.
Хотите знать, почему запись не заносится в таблицу?
Нет записей с bic = 'WLDSGB40XXX'
в таблице:
merge INTO BANK_DATA D
USING (SELECT *
FROM BANK_DATA
WHERE bic = 'WLDSGB40XXX') s
ON (D.bic = s.bic)
WHEN matched THEN
UPDATE SET D.name = 'LONDON',
D.bank_name = ' SERVICES LIMITED',
D.address = 'ONE OLIVERS YARD',
D.city = 'LONDON',
D.country = 'GB'
WHERE (d.bic = 'WLDSGB40XXX' )
WHEN NOT MATCHED THEN
INSERT (d.ID, d.TYPE, d.NAME, d.bank_name, d.address, d.city, d.country, d.bic)
VALUES ((SELECT MAX(to_number(id)) + 1 FROM BANK_DATA),
'01',
'LONDON',
'LIMITED',
'ONE YARD',
'1',
'1',
'GB40XXX'
);