Requête SQL - Pb avec la clause GROUP BY
Bonjour,
j'ai un pb avec une requête que je n'arrive pas à résoudre.
J'ai une table Courrier qui est en relation avec une table Diffusion. J'ai besoin de ressortir par service le nb de diffusions en retard par période (0 à 10j, 10 à 20j,...).
Ma requete focntione sous MySQL mais j'ai une erreur sous MSSQL
Citation:
La colonne 'D.YDIF_SYSID_SERVICE' n'est pas valide dans la liste de sélection parce qu'elle n'est pas contenue dans une fonction d'agrégation ou dans la clause GROUP BY.
CI-dessous une partie de la requete :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
select
(select count(*)
from yfic_diffusion
where (
(DATEDIFF(day,YDIF_SDTE_TRAITER_AVANT,getdate())>0
AND DATEDIFF(day,YDIF_SDTE_TRAITER_AVANT,getdate())>=((1-1)*10)
AND DATEDIFF(day,YDIF_SDTE_TRAITER_AVANT,getdate())<=((1)*10) )
AND D.YDIF_SYSID_SERVICE=YDIF_SYSID_SERVICE
) ) as interval_1 ,
count(*) as nombre, YSER_SERVICE
FROM YFIC_Courrier
left outer join YFIC_service on YCOU_SYSID_SERVICE_UTIL = YSER_SYSID_SERVICE
left outer join YFIC_DIFFUSION D on YCOU_SYSID_COURRIER=D.YDIF_SYSID_COURRIER
GROUP BY YSER_SERVICE
ORDER BY YSER_SERVICE |
Si quelqu'un y voir un peu plus clair que moi
Merci d'avance
Jerome