IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes et SQL. Discussion :

Requete NOT EXISTS qui ne retourne aucun enregistrements


Sujet :

Requêtes et SQL.

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2007
    Messages : 22
    Points : 15
    Points
    15
    Par défaut Requete NOT EXISTS qui ne retourne aucun enregistrements
    Bonjour,

    Je suis en train de développer une base access permettant de gérer une équipe projet, je dois fournir à mon manager un rapport sur l'activité de chaque employé, en fait il voudrais avoir le nombre de jour travaillés effectifs (en prévision) sur l'année en cours (en gros = jours de travail - jours de congés prévus).

    J'ai crée une requete pour pouvoir afficher tout ça, mais la requete ne me retourne rien ... alors qu'elle devrais me retourner un résultat.

    Voici la structure de mes tables :

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    calendar (day(date) ,week(text),working_day(yes/no),month(number),year(number))
    indispo (id_ressource(text),day(date) )
    ressources (id_ressource(text) ,name(text))

    indispo est la relation entre les 2 tables calendar et ressources.

    Voici la requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    SELECT ressources.id_ressource, calendar.year, calendar.month, Count(calendar.day) AS CountOfday
    FROM ressources, calendar
    WHERE (((ressources.id_ressource)="MMA") AND ((calendar.year)=2007) AND ((calendar.working_day)=Yes)  
     
    AND NOT EXISTS (              
     
    SELECT ressources.id_ressource, calendar.year, calendar.month, Count(calendar.day) AS CountOfday
    FROM ressources INNER JOIN (calendar INNER JOIN indispo ON calendar.day = indispo.day) ON ressources.id_ressource = indispo.id_ressource
    WHERE (((ressources.id_ressource)="MMA") AND ((calendar.year)=2007) AND ((calendar.working_day)=Yes))
    GROUP BY ressources.id_ressource, calendar.year, calendar.month;
     
        ))
     
    GROUP BY ressources.id_ressource, calendar.year, calendar.month;
    Le "MMA" correspond à l'identifiant d'un employé qui devras etre donné en paramètre dans un formulaire que je ferais par la suite, j'utilise ici l'identifiant d'un employé ayant posé des congés pour vérifier que ma requete fonctionne ...

    Merci pour votre aide.

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2007
    Messages : 22
    Points : 15
    Points
    15
    Par défaut Houraaaa !
    C'est bon,

    J'ai trouvé une solution, j'ai utilisé un not in à la place et ça marche très bien ...

    Apparemment le Not exists passe pas sous Access ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Requete INSERT qui ne créé aucun enregistrement
    Par SuNn69 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 04/01/2012, 23h14
  2. [MySQL] Une requete qui ne retourne aucun résultats
    Par amerex dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 23/01/2010, 18h46
  3. Requete NOT EXISTS retournant un résultat vide
    Par uptoditime dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 04/12/2007, 19h08
  4. Réponses: 4
    Dernier message: 06/11/2007, 22h47
  5. MySQL n'a retourné aucun enregistrement.
    Par starr dans le forum Administration
    Réponses: 1
    Dernier message: 11/10/2007, 14h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo