OVH Cloud OVH Cloud

Langage SQL

1 réponse
Avatar
YoHan
Je recherche lors de l'=E9x=E9cution d'une requ=EAte =E0 faire le=20
compte des valeurs distinctes.
Ma requ=EAte simple est la suivante :

SELECT Count(`Formation Re=E7ues`.`Cd Cat=E9gorie BS`)=20
AS 'Nombre sur Cd Cat=E9gorie BS'
FROM `C:\BilanF\bdFR`.`Formation Re=E7ues` `Formation Re=E7ues`
WHERE (`Formation Re=E7ues`.`Cd Cat=E9gorie BS`=3D'a') AND=20
(`Formation Re=E7ues`.`Cd Sexe`=3D'm') AND (`Formation=20
Re=E7ues`.`Cd Typologie FP`=3D'conc') AND (`Formation=20
Re=E7ues`.`Stagiaire/Formateur ?`=3D's') OR (`Formation=20
Re=E7ues`.`Cd Cat=E9gorie BS`=3D'a') AND (`Formation Re=E7ues`.`Cd=20
Sexe`=3D'm') AND (`Formation Re=E7ues`.`Cd Typologie=20
FP`=3D'pposte') AND (`Formation=20
Re=E7ues`.`Stagiaire/Formateur ?`=3D's') OR (`Formation=20
Re=E7ues`.`Cd Cat=E9gorie BS`=3D'a') AND (`Formation Re=E7ues`.`Cd=20
Sexe`=3D'm') AND (`Formation Re=E7ues`.`Cd Typologie=20
FP`=3D'zperf') AND (`Formation Re=E7ues`.`Stagiaire/Formateur ?
`=3D's')

Malheureusement elle fait le compte de toutes les valeurs=20
r=E9sultats. Si je met :
SELECT DISTINCT Count(`Formation Re=E7ues`.`Cd Cat=E9gorie=20
BS`), le r=E9sultat est le m=EAme et avec :
SELECT Count(DISTINCT `Formation Re=E7ues`.`Cd Cat=E9gorie BS`)
je me retourne une erreur.

Quelle est la solution???
Merci.

YoHan

1 réponse

Avatar
joyeux atchoum
S'lt

a priori il te manque un regroupement sur l'element qui t'interesse
si c'est sur chaque categorie
tu devrais faire à la fin de ta requete SQL : GROUP BY [Formation
Reçues].[Cd Catégorie BS]

Dans tous les cas ta requete retournera une seul comptage sur
l'ensemble des enregistrements car tu n'as pas de GROUP BY
mais je ne suis pas sur de ce que tu souhaite exactement

ja;)
qui essaye de lire entre les lignes mais resultat pas garantie (on est
encore lundi)
:=)