У меня есть две таблицы, TBTC03 и TBTC03Y, с TBTC03Y с двумя дополнительными столбцами как EFFDTE и EXPDTE. Я должен объединить данные из TBTC03 в TBTC03Y со следующей логикой:Нарушение первичного ключа при объединении данных из другой таблицы
Если ни одного совпадения, TC03 не найден в TC03Y
новый TC03Y запись строить с данными TC03
Дата вступления в силу будет по умолчанию " 01-01-1980'
Дату истечения срока будет по умолчанию '09 -30-1995'
Я написал запрос для того же, как:
insert into TBTC03Y (LOB,MAJPERIL,LOSSCAUSE,NUMERICCL,EFFDTE,EXPDTE)
select LOB,MAJPERIL,LOSSCAUSE,NUMERICCL,'0800101' ,'0950930'
from TBTC03 where not EXISTS (select * from TBTC03Y where
TBTC03Y.LOB = TBTC03.LOB AND
TBTC03Y.MAJPERIL = TBTC03.MAJPERIL AND
TBTC03Y.LOSSCAUSE = TBTC03.LOSSCAUSE AND
TBTC03Y.NUMERICCL = TBTC03.NUMERICCL)
Первичным ключом для обеих таблиц являются LOB, MAJPERIL и LOSSCAUSE.
Однако у меня есть записи TBTC03Y, у которых уже есть данные с первичным ключом.
Выполнение приведенного выше запроса дает ограничения на первичные ключи для некоторых строк. Я не могу понять, как я могу его усвоить.
Примеры данных и желаемые результаты действительно помогут объяснить, что вы хотите сделать. –
Спасибо Гордону, написав образцы данных, я понял проблему. : D – CHS