Bonjour,

Voilà j'ai un script qui a besoin d'une optimisation parce que il prends beacuoup de temps. Pourriez vous m'aider s'il vous plait ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
DECLARE @I [INT]
DECLARE @LIMITE [INT] 
DECLARE @QUOTIENT [BIGINT]
DECLARE @ID_COT [BIGINT]
SET @LIMITE = (SELECT COUNT(*) FROM #ID_COT_TMP)
SET @I = 1
 
WHILE @I < @LIMITE + 1
BEGIN 
 
SET @QUOTIENT = (SELECT FLOOR (MAX ( (((CODE_CLE / 100) + 100000) * 100) + 5)) FROM #REF_CLE)
SET @ID_COT = (SELECT ID_COT FROM #ID_COT_TMP WHERE ID = @I)
 
UPDATE #COT_TMP 
SET ID_COT = @QUOTIENT
WHERE ID_COT = @ID_COT
 
INSERT INTO #REF_CLE (CODE_CLE, SRC_CLE, lib_cle)
SELECT DISTINCT ID_COT AS CODE_CLE, SRC_CLE, LIB_CLE
FROM #COT_TMP C
WHERE ID_COT  = @QUOTIENT
 
SET @I = @I + 1
PRINT @I;
END