[ACCESS] compter et afficher 0 si pas résulta

Résolu/Fermé
fabien - 28 août 2006 à 11:17
 fabien - 29 août 2006 à 15:16
Bonjour,

je dois extraire des statistiques à partir d'une base access pour celà, je cherche à éxécuter la requète suivante:

SELECT CLIENTS.DATEDUJOUR, CLIENTS.FONCTIONNA, CLIENTS.NIV_1, Count(CLIENTS.FONCTIONNA) AS CompteDeFONCTIONNA
FROM CLIENTS
GROUP BY CLIENTS.DATEDUJOUR, CLIENTS.FONCTIONNA, CLIENTS.NIV_1
HAVING (((CLIENTS.DATEDUJOUR)>=[date de début] And (CLIENTS.DATEDUJOUR)<=[date de fin]) AND ((CLIENTS.FONCTIONNA) Like "FONCTIONNAIRE") AND ((CLIENTS.NIV_1)<>""));

cette requète me permet d'avoir le nombre de fonctionnaire où le champs niv_1 est bien rempli sur une période entré par l'utilisateur. le problème que je rencontre est que quand il n'y a pas de fonctionnaire ou le champs niv_1 est bien rempli pour une date donnée celui ci ne renvoi aucun résultat et j'aimerai qu'il m'affiche 0 plutot que de ne pas afficher la ligne.

j'espère avoir été clair, en vous remerciant d'avance des réponse que vous pourrez m'apporter.
cordialement.

2 réponses

blux Messages postés 25975 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 17 avril 2024 3 285
28 août 2006 à 13:52
Salut,

il existe la fonction iif.

SELECT iif(test,valeursivrai,valeursifaux)

Ex :

SELECT iif(nom like "Mar*","commence par Mar",nom) FROM table1;

va afficher autant de lignes qu'il y en a dans la table avec soit "commence par Mar", soit le nom s'il ne commence pas par Mar...

A toi d'adapter dans ton cas
0
bonjour,
merci beaucoup pour ta réponse je n'ai malheuresement pas réussi pour le moment mais je vais perséverer.
0
blux Messages postés 25975 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 17 avril 2024 3 285
29 août 2006 à 10:32
Ben ça pourrait donner ça :

SELECT CLIENTS.DATEDUJOUR, CLIENTS.FONCTIONNA, CLIENTS.NIV_1, iif(Count(CLIENTS.FONCTIONNA)>0, Count(CLIENTS.FONCTIONNA),"0") AS CompteDeFONCTIONNA
FROM CLIENTS...
0
Merci pour tout j'ai enfin réussi grace à ta solution.
encore merci.
0