Bon, je récapitule:
tu as des enregistrements dans Table1 que tu veux mettre dans Table2.
ces enregistrements peuvent être présente dans Table2 dans ce cas les champs doivent être mis à jour.
s'ils ne sont pas présent il faut simplement les ajouter.
ce qui les identifie l'enregistrement c'est le champ ID.
si c'est ca j'aurais fait aussi deux requetes mais ceux-ci:
pour ajouter les enregistrement non présent:
1 2 3 4
| INSERT INTO Table2 ( ID, CHAMP1, CHAMP2 )
SELECT Table1.ID, Table1.CHAMP1, Table1.CHAMP2
FROM Table1
WHERE (Table1.ID Not In (SELECT Table2.ID FROM Table2)); |
puis maj les enregistrements déjà présent dans Table2:
UPDATE Table1 LEFT JOIN Table2 ON Table1.ID=Table2.ID SET TABLE2.CHAMP1 = TABLE1!CHAMP1, TABLE2.CHAMP2 = TABLE1!CHAMP2;
tu ne peux pas effectivement mettre à jour et inserer dans une même SQL.
Partager