Bonjour,
Je veux créer cette procédure :
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
 
DELIMITER //
DROP PROCEDURE IF EXISTS `GetCumul` //
CREATE PROCEDURE `GetCumul`(IN datedeb DATE)
BEGIN
 
DECLARE @minhpjb int ;
DECLARE @minhcjb int ; 
 
@minhpjb :=0;
@minhcjb :=0;
 
@minhpjb:=SELECT MIN( `BBRHPJB` )	FROM `teleinfo`	WHERE rec_date >= datedeb AND (`BBRHCJB` <>0);		
 
@minhcjb:=SELECT MIN( `BBRHCJB` )	FROM `teleinfo`	WHERE rec_date >= datedeb AND (`BBRHCJB` <>0);
 
	SELECT DISTINCT rec_date, rec_time, max(`BBRHPJB`) - @minhpjb AS VarCumul, PTEC
	FROM `teleinfo`
	GROUP BY rec_date, PTEC
	having rec_date >= datedeb;
union
	SELECT DISTINCT rec_date, rec_time, max(`BBRHCJB`) - @minhcjb AS VarCumul, PTEC
	FROM `teleinfo`
	GROUP BY rec_date, PTEC
	having rec_date >= datedeb;
END //
DELIMITER ;
Mais j'ai ce message :
ERROR 1064 (42000) at line 3: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@minhpjb int ;
DECLARE @minhcjb int ;

@minhpjb :=0;
@minhcjb :=0;

@minhpjb:=S' at line 4

Depuis plusieurs heures, je butte... en touche