Bonjour,
Je butte sur une requête sql celle-ci :
qui me produit l'erreur suivante :
Code TSQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 SELECT [Nom],[Prenom] ,CASE WHEN MIN(LicencesQualifications.DateFin) < DATEADD (month , 3, GETDATE()) THEN 'Moins de 3 mois' ELSE CASE WHEN MIN(LicencesQualifications.DateFin) < DATEADD (month , 6 , GETDATE()) THEN 'Moins de 6 mois' END END FROM [Personnel] LEFT OUTER JOIN LicencesQualifications on Personnel.NumLicence = LicencesQualifications.NumLicence
Ce que je voudrais :Msg*8120, Niveau*16, État*1, Ligne*3
La colonne 'Personnel.Nom' 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.
Visiblement cette erreur est produit en cas de clause GROUP BY, ce qui n'est pas le cas ici car il n'y en a pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Nom | Prénom | Échéance ---------------------------------------- Nico | La | Moins de 3 mois Alex | Durant | Moins de 6 mois Machin | Truc | Moins de 6 mois
Lorsque j'enlève les CASE (ligne 3 à 8) : la requête fonctionne, mais je ne trouve pas quelle est l'erreur dans mon CASE
Quelqu'un aurait une idée ?
Merci à vous ^^
Partager