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 :

Renvoyer une date si elle est un mercredi après 17 heure


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2016
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2016
    Messages : 5
    Par défaut Renvoyer une date si elle est un mercredi après 17 heure
    Bonjour,

    Je dois rédiger une requête SQL renvoyant une date uniquement si cette date est un mercredi après 17 heure.

    J'ai fait de nombreux essais mais le plus proche me semble être celui-ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT ma_date
    FROM ma_table
    WHERE TO_CHAR(ma_date, 'dy') = 'mer.' and TO_NUMBER(TO_CHAR(ma_date, 'hh')) > 17
    Cette requête me renvoie 'aucune ligne sélectionnée' alors que je sais que plusieurs répondent à la condition.

    Je précise que j'utilise Oracle avec SQL+ dans une VM Windows xp.

  2. #2
    Membre Expert
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 2 005
    Par défaut
    Peux-tu nous montrer le contenu de la table (enfin, un échantillon si celle-ci est trop grosse)?
    Ca nous permettra de voir comment sont stockées les dates.

    [EDIT]
    Ah, essaye de mettre les formats en majuscules pour voir ce que ça fait : remplace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    TO_CHAR(ma_date, 'dy') par TO_CHAR(ma_date, 'DY') et
    TO_NUMBER(TO_CHAR(ma_date, 'hh')) par TO_NUMBER(TO_CHAR(ma_date, 'HH'))
    et si ça ne marche pas, regarde bien si le résultat du premier est bien "mer." ou plutôt "MER." ou autre chose...

    La liste des formats supportés est ici : http://docs.oracle.com/cd/B19306_01/...004.htm#i34924

  3. #3
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 954
    Par défaut
    HH permet d'avoir les heures en AM et PM, il faut utiliser HH24 pour les heures sur 24h.
    Par ailleurs je préciserais la langue pour la conversion en jour pour éviter que le filtre de la requête soit dépendant des paramètres de sessions :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    to_char(ma_date, 'FMDAY','nls_date_language=French') = 'MERCREDI' and TO_NUMBER(TO_CHAR(ma_date, 'hh24')) > 17

Discussions similaires

  1. [XL-2007] Code vba renvoyant une date du jour lorsque une condition est satisfaite
    Par moussaouiassur dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 25/07/2014, 09h29
  2. Réponses: 2
    Dernier message: 10/05/2007, 22h19
  3. [JS] Recharger une page quand elle est réaffichée !
    Par beowax dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/02/2007, 16h01
  4. [VBA-E] masquer une combo lorsqu'elle est vide
    Par lio62 dans le forum Macros et VBA Excel
    Réponses: 46
    Dernier message: 04/02/2007, 21h16
  5. Renvoyer une date précise
    Par kilyn dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 05/10/2004, 10h11

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