Précédent   Forum des professionnels en informatique > Bases de données > Sybase
Sybase Forum sur la base de données Sybase. Avant de poster -> F.A.Q Sybase, Tutoriels Sybase
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/07/2006, 11h20   #1
Membre habitué
 
Avatar de agougeon
 
Inscription : mai 2005
Messages : 253
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 253
Points : 106
Points : 106
Par défaut [T-SQL]pb boucle while

Bonjour, j'ai une table de correspondance pour les jours ferier, et je recherche le premier jour ouvré a partir d'une date.

Pour tester je recherche le premier jour anterieur a une date ouvré, voici mon code :

Bon, c'est pas tres clair, mais en gros le select me retourn 'O' ou 'N' celon si c'est un jour ouvré ou pas :

Code :
1
2
3
4
5
6
7
8
9
 
declare @STEP int
SELECT @STEP = 0
 
while((SELECT DAT_OPEN_FLG FROM ID_DAT WHERE COUNTRY='FRA' AND DAT_REF = dateadd(day,@STEP,(SELECT EVT_DAT FROM ID_EVT WHERE EVT_NUM=1887535))) != 'O')
begin
SELECT DAT_OPEN_FLG FROM ID_DAT WHERE COUNTRY='FRA' AND DAT_REF = dateadd(day,@STEP,(SELECT EVT_DAT FROM ID_EVT WHERE EVT_NUM=1887535))	
SELECT @STEP = @STEP - 1
end
Le resultat de la requete retourne :
'N', il devrai continuer la boucle, puisque la condition n'est pas vraie...
Pourquoi s'arrete t'il?
PS : Si je met le select de boucle apres le select @STEP = @STEP - 1, il affiche la meme chose!!!!
Merci
agougeon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/07/2006, 12h05   #2
Membre habitué
 
Avatar de agougeon
 
Inscription : mai 2005
Messages : 253
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 253
Points : 106
Points : 106
En fait, ma boulce marche, j'affiche un select en fin de traitement et il me retourne bien la solution,
Je suis un vrai boulé.....


Merci
agougeon est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h40.


 
 
 
 
Partenaires

Hébergement Web