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 MySQL Discussion :

Test entre 2 champs DATE


Sujet :

Requêtes MySQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 3
    Par défaut Test entre 2 champs DATE
    Bonjour,

    J'ai un petit soucis dans mon boulot.
    Je gére une application help-desk.
    Je dois créer plusieurs régles pour que cette application soit optimal pour notre service.
    Je débute dans le domaine et en ce moment je bloque sur un problème de champs DATE.
    Je vous expliques : J'ai 2 champs DATE, le 1er et un champ ou l'on encode une date de planification pour le technicien. Le 2eme est un champ de résolution du problème, c'est le technicien qui le remplis quand l'incident est résolus. C'est deux champ sont des champ date+time.
    Je veux créer une régle qui dit que le champdate2 doit être plus grand ou égal au champdate1.
    Mon problème est que si un incident planifié pour le 03/09/2008 13:00:00 est résolus par le technicien le 03/09/2008 10:00:00 il y refuse car pour lui le champdate2 est plus petit que le champdate1 à cause de l'heure.

    Y a t'il un moyen de passer au-dessus de l'heure? Que la régle ne s'applique qu'à la date sans tenir compte de l'heure?

    Merci de m'aider

    Stef

  2. #2
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 288
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    champdate2 >= DATE(champdate1)
    On est bien d'accord que dans ton exemple, le technicien intervient 3 heures avant la date planifiée ?

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 3
    Par défaut Test champ DATE
    Oui c'est bien ça, le technicien intervient 3h avant.

    La personne qui planifie clique sur la date voulue dans un calendrier pour remplir le champdate1. L'heure se met automatiquement à côté de la date et il s'agit de l'heure actuel...
    Donc la personne qui plannifie choisi aujourd'hui de plannifier un dossier à un technicien en date du 16 sept 2008 sur le calendrier --> le champ se remplis comme suit --> 16/09/2009 14:55:03

    Quand le technicien reçoit son "pot" d'intervention à faire sur la journée, il l'organise comme il veut en fonction des déplacement qu'il a à faire.

    S'il décide de faire cette intervention en premier, quand il remplis sont rapport et qu'il remplis le champdate2 l'heure se met aussi automatiquement --> 16/09/2008 10:03:06 par exemple.

    Donc le test refuse la valeur du champdate2 pas car pour lui 16/09/2008 10:03:06 est plus petit que 16/09/2009 14:55:03.

    Tu compprends?

    Moi ce que je voudrais c'est ne pas tenir compte de l'heure des 2 champs dans le test. Juste la date. Dans ce cas alors il n'y aurait pas de problème car le champdate2 serait alors égal au champdate1.

    Merci bcp.

  4. #4
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 817
    Billets dans le blog
    14
    Par défaut
    Suggestion : changer le type des colonnes de datetime en date.

    Piste de solution si la suggestion n'est pas applicable :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CAST(champdate2 AS DATE) >= CAST(champdate1 AS DATE)
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  5. #5
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 288
    Par défaut
    Citation Envoyé par Stef Decroës Voir le message
    ...
    Tu compprends?

    Moi ce que je voudrais c'est ne pas tenir compte de l'heure des 2 champs dans le test. Juste la date. Dans ce cas alors il n'y aurait pas de problème car le champdate2 serait alors égal au champdate1.
    La requête que je t'ai donnée ci-dessus ne te va pas ?

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 3
    Par défaut ça ne fonctionne toujours pas
    Bonjour,

    Merci pour votre aide. Malheureusement ça ne fonctionne toujours pas.
    Je vais vous montrer ce que je fait exactement.

    Dans l'interface je dois taper la valeur1 que je veut comparer dans un premier champ, le test dans un deuxième champ et la valeur2 dans un troisième.
    Ce qui donne ceci :

    Champ1 --> {MATH,<(convert(varchar(10), [Actual Start Date],103) from [_SMDBA_.Work Orders] wehre [Work Order #] = {TR,Work Order #})> MT}

    Champ2 --> LessThan

    Champ3 --> {MATH,<(convert(varchar(10), [Start Date],103) from [_SMDBA_.Work Orders] wehre [Work Order #] = {TR,Work Order #})> MT}

    La fonction que vous m'aviez donné ne fonctionne pas...
    Help me please ;o)

  7. #7
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 288
    Par défaut
    qu'est-ce que c'est que cette syntaxe ???

Discussions similaires

  1. Réponses: 3
    Dernier message: 06/11/2014, 16h07
  2. Réponses: 6
    Dernier message: 15/08/2011, 10h47
  3. [Débutant] CompareValidator : écart max entre deux champs date
    Par Yosko dans le forum ASP.NET
    Réponses: 4
    Dernier message: 08/08/2011, 16h28
  4. Réponses: 6
    Dernier message: 12/01/2007, 21h34
  5. [Dates] Test sur un champ de formulaire
    Par rdams dans le forum Langage
    Réponses: 4
    Dernier message: 15/09/2005, 16h03

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