Bonjour,

je n'arrive pas à trouver la solution à mon problème. Je m'en remets dons à vous

Voici ma table BIG_VIEW_PRODUCT :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
useridglobal datevisite targetvalue hostname timeID ordre realevent
j'ai deux dates car datevisite est en unixtime (précis pour les secondes) et timeID en timestamp.

Alors je vous explique, pour l'instant mon realevent est par défaut NULL (c'est un int).
J'aimerais faire une fonction, un curseur, une boucle.. j'en ai aucune idée mais je sais le résultat que je dois avoir.
En gros pour un useridglobal, lorsque l'ordre est supérieur à 20 il faut mettre realevent à la valeur 0. Sinon realevent doit être à 1 par défaut.

J'avais commencer ce curseur mais il est faux et je sais pas comment l'arranger...

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
declare @useridglobal varchar(250)
declare @ordre int
declare @realevent int
 
declare curseur_realevent cursor local for
 
select useridglobal, ordre, realevent
from BIG_VIEW_PRODUCT
where ordre > 20
group by useridglobal, ordre, realevent
 
open curseur_realevent
fetch next from curseur_realevent into @useridglobal, @ordre, @realevent
while @@FETCH_STATUS=0
	begin
	set @realevent=1
	select @realevent=realevent from BIG_VIEW_PRODUCT
	where @useridglobal=useridglobal and @ordre=ordre
 
	if @ordre>20
		begin
			@realevent=0
		else
			@realevent=1
		end
 
	fetch next from curseur_realevent into @useridglobal, @ordre, @realevent
	end close curseur_realevent
deallocate curseur_realevent
En espérant avoir une réponse ^^

A +