J'ai les deux tableaux suivants:-
Table1
-------------
ID Name
1 A
2 B
3 C
Table2
--------
ID Name
1 Z
J'ai besoin d'insérer des données de la Table1 à la Table2 et je peux utiliser la sytaxe suivante pour cela :-.
INSERT INTO Table2(Id, Name) SELECT Id, Name FROM Table1
Cependant, dans mon cas, des doublons d'Ids peuvent exister dans Table2 (dans mon cas, c'est juste "1") et je ne veux pas les recopier car cela entraînerait une erreur.
Je peux écrire quelque chose comme ceci :-
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-t-il une meilleure façon de procéder sans utiliser IF - ELSE ? Je veux éviter deux instructions INSERT INTO-SELECT basées sur une certaine condition.
Toute aide est appréciée.