Я присоединяюсь к 2 таблице и сравниваю, если столбцы не совпадают, как указано ниже:
select count(*) from
table1 t1 inner join table2 on (t1.key = t2.key and ( nvl(t1.address1,'X') <> nvl(t2.address1,'X') or nvl(t1.address2,'X') <> nvl(t2.address2,'X') );
типы даты
- t1.address1 - varchar200
- t2.address1 - varchar250
- t1.address2 - varchar100
- t2.address2 - varchar250
ошибка:
SQL Error [500310] [42883]: [Amazon](500310) Invalid operation: operator does not exist: character varying <> record;
Я пробовал с nvl (t1.address1 :: varchar, 'X') <> nvl (t2.address1 :: varchar, 'X'), потому что это работало для аналогичных сравнений для нескольких столбцов, но не для столбцов рабочих адресов.