Это на самом деле довольно распространенный SQL: вы либо хотите вставить, либо обновить, да? Таким образом, вам нужно два оператора (один для обновления, один для вставки) и способ сказать, если он должен быть вставлен. Что вам действительно нужно, так это уникальный ключ, который никогда не будет дублироваться для отдельной записи (может быть составным ключом) и два оператора, например:
UPDATE right SET
right1 = left1,
right2 = left2,
etc
FROM the_import_table right
LEFT JOIN the_existing_data left ON left.key = right.key
WHERE right.key IS NOT NULL --note that I write in TSQL
INSERT INTO right (
right1,
right2,
etc
) SELECT
left1,
left2,
etc
FROM left
LEFT JOIN right on left.key = right.key
WHERE right.key IS NULL
Обратите внимание, что вы можете использовать составные ключи, используя набор значений ANDed в WHERE, и обратите внимание, что вы не обновляете составные ключи, но, вероятно, вставляете составные ключи. Это должно быть хорошо, чтобы вы начали. Прежде чем просить разъяснений, обновите ваш вопрос, указав фактический код.