Bonjour à tous,
Je dois maintenir des jobs sql server qui alimentent une base de données.
Je suis en train d'analyser le code sql, et je suis tombé sur le code suivant :
WHILE 1=1 BEGIN
DELETE A FROM @TEMP_TABLE A
INNER JOIN (
SELECT TOP 10000 FIELD1, FIELD2 FROM TABLE
) B ON A.FIELD1 = B.FIELD1 AND A.FIELD2 = B.FIELD2
IF @@ROWCOUNT < 10000 BREAK
END
@TEMP_TABLE est une variable TABLE
et TABLE est la table cible
Ce code est censé effacer par paquet de 10000 les éléments de la table temporaire qui existent déjà dans la table cible en vue d'une insertion dans la table cible.
Est-ce que le code vous semble correct ??
J'espère avoir été assez clair et merci de votre aide
Partager