bonjour
j'arrive pas a exécuter cette requete sous sql server :
select DateEnr,M, iif(DATEPART(hour,HeureEnr) > 4,1,0) as test
from QteReel
erreur : incorrect syntax near '>'
???? merci
Version imprimable
bonjour
j'arrive pas a exécuter cette requete sous sql server :
select DateEnr,M, iif(DATEPART(hour,HeureEnr) > 4,1,0) as test
from QteReel
erreur : incorrect syntax near '>'
???? merci
donne sous sql serveurCitation:
select DateEnr,M, iif(DATEPART(hour,HeureEnr) > 4,1,0) as test
from QteReel
Code:
1
2
3
4
5
6
7 select DateEnr,M, case when DATEPART(hour,HeureEnr) > 4 then 1 else 0 end as test from QteReel
Normal : iif n'existe pas dans le langage SQL et par conséquent ne se trouve pas dans SQL Server. Il s'agit d'un "truc" spécifique à Access et une cochonerie équivalente ! ;-)
Dans le langage SQL qui est une norme, il y a le CASE pour répondre à ce genre de problématique. Lisez ce que j'ai écrit à ce sujet :
http://sqlpro.developpez.com/cours/sqlaz/select/#L7
A +
merci, par contre si je rajoute
select DateEnr,M, sum(iif(DATEPART(hour,HeureEnr) > 4,1,0))as test
from QteReel
group by DateEnr
??
le iff n'existe pas !!!!!!!!!!!!!!!!!!!
Code:
1
2
3
4
5
6
7
8 SELECT DateEnr,M, SUM(case when DATEPART(hour,HeureEnr) > 4 then 1 else 0 end) AS test FROM QteReel group by DateEnr,M
je sais cetait juste pour te rappeler la requete, j'ai bien saisi merci :)
j'ai toujours un problème :(
SELECT DateEnr, M,
Sum(case
when (DATEPART(hour,DateEnr) > 4 AND DATEPART(hour,DateEnr) < 10) then 1
else 0
end) AS test
FROM QteReel
GROUP BY DateEnr, M
HAVING (((QteReel.M)='609'));
la reponse est :
DateEnr M test
.... 609 0
.... 609 1
.... 609 0
.... 609 1
.... 609 1
.... 609 1
.... 609 0
.... 609 0
....
il ne me fait pas la somme !! :roll:
chui bete c bon :) merci
mets la balise résolu :D
comment je peux convertir une chaine de caracteres en date sous sql server ?
merci
Alors pour convertir une chaine de caractère de la forme JJ/MM/AAAA tu peux faire la chose suivante :
Code:
1
2
3
4
5
6
7 select cast('01/12/2007 15:25:12' as datetime) Résultat 01/12/2007 15:25:12
super ca marche merci