объединить - не вставить запись в таблицу назначения - PullRequest
0 голосов
/ 01 ноября 2018

После выполнения вышеуказанного 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'
  );
...