Evite duplicatas na consulta INSERT INTO SELECT no SQL Server

Eu tenho as seguintes duas tabelas:

Table1
----------
ID   Name
1    A
2    B
3    C

Table2
----------
ID   Name
1    Z

Eu preciso inserir dados deTable1 paraTable2. Eu posso usar a seguinte sintaxe:

INSERT INTO Table2(Id, Name) SELECT Id, Name FROM Table1

No entanto, no meu caso, podem existir IDs duplicados emTable2 (no meu caso, é apenas "1") e não quero copiar isso novamente, pois isso geraria um erro.

Eu posso escrever algo como isto:

IF NOT EXISTS(SELECT 1 FROM Table2 WHERE Id=1)
INSERT INTO Table2 (Id, name) SELECT Id, name FROM Table1 
ELSE
INSERT INTO Table2 (Id, name) SELECT Id, name FROM Table1 WHERE Table1.Id<>1

Existe uma maneira melhor de fazer isso sem usarIF - ELSE? Eu quero evitar duasINSERT INTO-SELECT declarações baseadas em alguma condição.

questionAnswers(8)

yourAnswerToTheQuestion