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

Access Discussion :

Goosse difficulté sur requette access sur intervalle temps [Multipost]


Sujet :

Access

  1. #1
    Futur Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 26
    Points : 8
    Points
    8
    Par défaut Goosse difficulté sur requette access sur intervalle temps
    Pour une simulation de base de donnée pour un hotel, je dois faire une requette qui répértorie par société toutes les chambres occupé sur une période donnée (en parametre).
    J'ai donc fait une requete qui marche avec les dates de réservation, le probleme c'est qu'access prend en compte le séjour complet meme si la date d'arrivé (ou de départ) n'est pas dans l'intervale de temps demandé.
    Par exemple, sur une période du 01/02 au 28/02 access vas compter tous les jours sur une réservation du 25/01 au 10/02 (16 jours), alors qu'il faudrait qu'il ne prenne en compte que les jours du 01/02 au 10/02 (10 jours)

    Merci de m'aider, je coince depuis plusieur jour sur cette requette.

    Ci dessous les copies d'écran de la requette actuelle :

      0  0

  2. #2
    Futur Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    et en mode sql :

      0  0

  3. #3
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    tu as déja posté sur ce sujet et je t'ai adressé une solution
      0  0

  4. #4
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    2 912
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 912
    Points : 4 811
    Points
    4 811
    Par défaut
    Random t'as en effet adressé une solution dont j'ai apprécié la subtilité.
    Apparemment, tu n'as pas fait beaucoup d'effort pour la comprendre !

    ... sans parler de lui dire MERCI
      0  0

  5. #5
    Futur Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    micniv j'ai appliqué ta méthode, mais access me plante une erreur de syntaxe dans la requete union.

    Voici la requette

      0  0

  6. #6
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    2 912
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 912
    Points : 4 811
    Points
    4 811
    Par défaut
    Dans ma réponse du 13-02, j'ai fait des unions pour pouvoir dans chaque cas additionner la "durée utile" des reservations (c_à-d la durée comprise entre tes dateDebutSelection et dateFinSelection) . Bref, j'ai essayé en une seule requete de tout faire : traiter les 4 cas et les regroupements mais le resultat est lourd (4 UNIONs) et difficile a maintenir.

    La solution de Random t'extrait et te calcule elegamment toutes tes lignes utiles. Il te faut ensuite juste faire une seconde requete sur celle-ci pour calculer tes sommes.
      0  0

  7. #7
    Futur Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    Effectivement la solution de random à l'air de fonctionner, j'ai appliquer la requette suivante :


    PARAMETERS [date n :] DateTime, [date n+1 :] DateTime;
    SELECT societe,(ReservationsCh.DateD), , Val(IIf((ReservationsCh.DateF)<=[date n+1 :],(ReservationsCh.DateF),[date n+1 :]))-Val(IIf((ReservationsCh.DateD)<[date n :],[date n :],(ReservationsCh.DateD))) AS durée
    FROM ReservationCH
    WHERE (ReservationsCh.DateD)>=[date n :] AND (ReservationsCh.DateF)<=[date n+1 :];

    Il faut juste que les résultats soient regroupé par société, ce qui n'est pas le cas ici, je vais chercher ça si je trouve pas je rappellerais au secours. En tout cas merci à Random et surtout BRAVO pour avoir pondu une requette aussi efficace que succinte
      0  0

Discussions similaires

  1. Réponses: 1
    Dernier message: 08/10/2010, 16h38
  2. Réponses: 3
    Dernier message: 17/09/2008, 17h04
  3. Réponses: 3
    Dernier message: 16/02/2007, 12h35
  4. Ecrire une requette SQL sur Access
    Par Nadaa dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 18/05/2006, 14h32
  5. Requette access sur intervalle de temps
    Par skyman272 dans le forum Access
    Réponses: 15
    Dernier message: 18/02/2006, 10h45

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