Bonsoir,

Voila j'aurais voulu afficher uniquement le CA mini et maxi d'un représentant par ville et donc au résultat avoir une ligne par VILLE uniquement regroupant le CA mini et maxi de celui-ci.

Sachant que j'ai 5 villes différentes au total et que chaque ville peut avoir plusieurs représentant comme la requête ci-dessous vous le montre :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
SELECT R.NREP,VILLE, sum(montant)	
FROM BUREAU B, COMMANDE CMD, REPRESENTANT R
WHERE B.NBUR = R.NBUR and R.NREP = CMD.NREP
GROUP BY VILLE, R.NREP
NREP VILLE
106 NEW YORK 32958.00
109 NEW YORK 33130.00
101 CHICAGO 3978.00
103 CHICAGO 37795.00
104 CHICAGO 67500.00
105 ATLANTA 35582.00
102 LOS ANGELES 29276.00
108 LOS ANGELES 51533.00
107 DENVER 3082.00


En ce moment je bloque sur ce code :

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
DECLARE @CA_mini dec(9,2)
DECLARE @CA_maxi dec(9,2)
DECLARE @VILLE varchar(25)
DECLARE @montant dec(9,2)
DECLARE @VILLE2 varchar(25)
 
SET @CA_mini = 50000
SET @CA_maxi = 0
 
DECLARE exo2 CURSOR FOR 
SELECT VILLE	
FROM BUREAU B
 
OPEN exo2
 
FETCH FROM exo2 INTO @VILLE2
BEGIN
    WHILE @@FETCH_STATUS = 0
    BEGIN
				BEGIN
 
 
DECLARE exo CURSOR FOR 
SELECT VILLE, sum(montant)	
FROM BUREAU B, COMMANDE CMD, REPRESENTANT R
WHERE B.NBUR = R.NBUR and R.NREP = CMD.NREP and ville = @ville2
GROUP BY VILLE, R.NREP
 
OPEN exo
 
FETCH FROM exo INTO @VILLE, @montant
BEGIN
    WHILE @@FETCH_STATUS = 0
    BEGIN
				BEGIN
 
				IF @MONTANT > @CA_maxi 
				SET @CA_maxi = @MONTANT
				IF @MONTANT < @CA_mini
				SET @CA_mini = @MONTANT
 
 
				END
		FETCH FROM exo INTO @VILLE, @montant
	END
 
END
CLOSE exo
DEALLOCATE exo
 
END
		PRINT 'La ville de ' + @ville2 + ' qui a un CA mini de '+convert(char(9),@CA_mini)+'et un CA maxi de '+convert(char(9),@CA_maxi)
		FETCH FROM exo2 INTO @VILLE2
	END
 
END
CLOSE exo2
DEALLOCATE exo2
Celui-ci fait bien une partie de ceux que je veux mais le problème qui me coince est la réinitialisation de CA_mini et CA_maxi chaque fois que la ville change.

Pouvez-vous me proposer une aide pour me débloquer s'il vous plaît et si possible l'explication qui va avec toujours dans le cadre de ma formation et savoir ce que je fais.

Merci a vous