Bonjour à tous.
J'ai besoin de supprimer des enregistrements dans une table si ils existent déjà et que l'on cherche à les remettre.
J'ai lu pas mal de choses différentes et j'ai testé des requêtes différentes mais rien de probant.
La base est Oracle et voici ce que j'ai pour le moment:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
DELETE FROM ODS_BUDGET_HORIZON ODS WHERE ODS.ANNEE IN
    (
    SELECT ODS.ANNEE 
    FROM ODS_BUDGET_HORIZON ODS LEFT OUTER JOIN HORI_BUDGET_HORIZON HORI  
      ON ODS.ANNEE = HORI.ANNEE
     AND ODS.BUDGET = HORI.BUDGET
     AND ODS.RUBRIQUE_FRAIS = HORI.RUBRIQUE_FRAIS
     AND ODS.TEMPS = HORI.TEMPS
     AND ODS.DIRECTION = HORI.DIRECTION
     AND ODS.TYPE_FRAIS = HORI.TYPE_FRAIS)
En fonction de ce que je lis soit il faut joindre soit il ne faut surtout pas car la jointure dans un delete c'est catastrophique.
Je suis donc perdu