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

SQL Oracle Discussion :

Chevauchement des intervalles de dates


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2015
    Messages : 10
    Par défaut Chevauchement des intervalles de dates
    Bonsoir tout le monde !
    J'espère que vous allez bien !
    Je suis sur Oracle 10g ;
    Je suis entraine de developper une application pour gérer la réservation dans un hôtel , alors chaque chambre est réservée pour une période définie par date_début et date_fin , le problème c'est que lors de la réservation on associe à un client un intervalle de temps , qui peut chevaucher avec un autre intervalle de temps , un exemple :
    un client x réserve une chambre A dans l'intervalle :17/04/2016 jusqu'a 25/04/2016 ; un autre client y réserve la même chambre A mais dans un intervalle qui est : 20/04/2016 jusqu'à le 28/04/2016 .
    La question :
    Comment régler ce problème ?
    Si votre solution est un trigger !? Comment le faire !?
    Merci tout le monde .

  2. #2
    Membre expérimenté
    Homme Profil pro
    Ingénieur en études décisionnelles
    Inscrit en
    Février 2013
    Messages
    134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur en études décisionnelles

    Informations forums :
    Inscription : Février 2013
    Messages : 134
    Par défaut
    Bonjour,

    Est-ce le client qui choisit sa chambre ? Y a t-il une raison à cela (chambre de luxe, suite, ...) ? Si c'est le cas, pourquoi l'application la lui propose sur des dates où elle n'est pas disponible ? Est-ce pour le frustrer ?
    (entre nous, rien de pire qu'un formulaire où il faut tâtonner pour trouver l'intervalle de date qui convient)

    Si ce n'est pas lui qui la choisit, pourquoi est-ce que l'application propose la chambre A sur certaines dates alors qu'elle a déjà été réservée sur des dates choisies par un autre client ?


    Pour votre question initiale, je pense que votre application devrait effectuer des requêtes SQL de vérification avant la réservation. Si tous les voyants sont au vert, alors on peut insérer la réservation en base. Mais il nous faudrait la structure de vos tables pour vous aider davantage.

    En l'état, j'ai l'impression que vous insérez tout ce qui se passe sur l'application, et que vous souhaitez supprimer ce dont vous n'avez pas besoin. Je trouve cette manière de faire dangereuse. Que se passera t-il le jour où la suppression ne se passera pas bien ? Est-ce que les deux clients se retrouveront dans la même chambre ? Je ne suis pas sûr qu'ils apprécieront cette situation...

  3. #3
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 611
    Billets dans le blog
    10
    Par défaut
    Je pense plutôt que la question est : comment vérifier par une requete SQL que la période demandée par le client est en chevauchement avec la période d'occupation de la chambre que j'envisage de lui proposer

    La méthode est assez simple :
    soit deux périodes matérialisées par une date de début (D) et une date de fin (F)
    les périodes sont chevauchantes si D2 < F1 et F2> D1

    La traduction SQL dépend de la façon de gérer les dates de fin : quand il n'y a pas de fin (chambre réservée jusqu'à nouvel ordre) vous devez savoir si vous avez une date fictive, nulle ou autre pour savoir commet traduire en requete.

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2015
    Messages : 10
    Par défaut
    Bonsoir Monsieur Emmanuel R !
    merci pour votre réponse !
    pour vos question:
    "Est-ce le client qui choisit sa chambre ? Y a t-il une raison à cela (chambre de luxe, suite, ...) ? Si c'est le cas, pourquoi l'application la lui propose sur des dates où elle n'est pas disponible ? Est-ce pour le frustrer ?"
    -oui , un client peut choisir une chambre pour la raison qu'il y a des chambres lux , suite... :c'est le cas alors ,j'ai pas encore développé l'application(dans le début) ,c'est juste une question pour faciliter le développement ensuite ( si vous avez des idées coté fenêtrage et contenu des fenêtres, j'aurais aimé de les savoir, car j'ai pas beaucoup d'idées).
    -j'ai pas bien compris ta dernière question !
    les tables(MPD) .
    Images attachées Images attachées  

  5. #5
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2015
    Messages : 10
    Par défaut
    bonsoir Monsieur escartefigue !!
    merci pour votre réponse et sur tout un merci pour la dernière remarque , j'ai pas pensé à ce cas !
    je vais mettre une date fictive c mieux !

Discussions similaires

  1. [XL-2007] Probl formule avec des intervales de dates
    Par alexandrek dans le forum Excel
    Réponses: 0
    Dernier message: 09/02/2011, 11h56
  2. intersection des intervalles de date
    Par AJ_ing dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 04/02/2011, 15h26
  3. [MySQL 5.5] Requete pour des intervalles de dates
    Par Kaldyris dans le forum Requêtes
    Réponses: 3
    Dernier message: 07/04/2009, 18h50
  4. [MySQL] Chevauchement d'intervalles de dates
    Par remys dans le forum Langage SQL
    Réponses: 5
    Dernier message: 29/09/2008, 12h16
  5. [Transact SQL] Comparer des intervales de dates
    Par jowsuket dans le forum Langage SQL
    Réponses: 5
    Dernier message: 21/05/2008, 11h25

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