Bonjour,

Je cherche à mettre à jour les données d'une table en fonction d'une table de référence.

Table A(numeroDocument, NumeroEnregistrement, Montant)

Table B(numeroDocument, NumeroEnregistrement,........, Montant)

Tous mes montants sont à null dans la table B et je voudrais les remplir par les montants qui se trouvent dans la table A.

J'ai bien l'idée de faire quelque chose du genre :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
UPDATE a
SET a.montant =
  (SELECT b.montant
   FROM b
   WHERE a.numerodocument = b.numerodocument
   AND a.numeroenregistrement = b.numeroenregistrement)
;
Le problème est que ces deux tables ont plusieurs millions de lignes.
La requête se finit en erreur parce qu'elle dure trop longtemps.

Comment faire cette opération autrement ?

Merci.