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

 Oracle Discussion :

[SQL] - Faire une condition si un champ n'est pas nul


Sujet :

Oracle

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    262
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 262
    Points : 230
    Points
    230
    Par défaut [SQL] - Faire une condition si un champ n'est pas nul
    Bonjour,

    j'ai une petite question, j'ai la requete suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    SELECT
        SMGSECTION.UIDSECTION,
        SMGSECTION.SECTIONCODE,
        SMGSECTION.DESCRIPTION,
        SMGSECTION.STARTTIME,
        SMGSECTION.STOPTIME
    FROM
        SMGSECTION SMGSECTION
    WHERE
        AND SMGSECTION.STARTTIME < SYSDATE
        AND SMGSECTION.STOPTIME > SYSDATE
        AND SMGSECTION.UIDSECTION NOT IN (SELECT SMGSUPZONESECTION.UIDSECTION FROM SMGSUPZONESECTION SMGSUPZONESECTION)
    Et en fait je voudrai qu'il fasse cette partie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    AND SMGSECTION.STOPTIME > SYSDATE
    seulement si SMGSECTION.STOPTIME n'est pas vide

    J'ai essayer de remplacer ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    AND SMGSECTION.STOPTIME > SYSDATE
    par ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    (CASE WHEN SMGSECTION.STOPTIME IS NOT NULL THEN SMGSECTION.STOPTIME > SYSDATE END)
    Mais evidemment ca ne marche pas. Quelq'un saurait-il comment je dois proceder? Merci beaucoup.
    Tox

  2. #2
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    Deux solutions :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AND NVL(SMGSECTION.STOPTIME,SYSDATE+1) > SYSDATE
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AND (SMGSECTION.STOPTIME > SYSDATE OR SMGSECTION.STOPTIME IS NULL)

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    262
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 262
    Points : 230
    Points
    230
    Par défaut
    C'est exactement ca.
    Merci beaucoup pour la rapidite!

    A+
    Tox

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 22/07/2009, 11h52
  2. Réponses: 16
    Dernier message: 06/04/2007, 13h36
  3. Réponses: 4
    Dernier message: 09/02/2006, 15h20
  4. Faire une requête dans un champ
    Par alleramiens dans le forum Requêtes
    Réponses: 6
    Dernier message: 28/01/2006, 18h30
  5. [PERL] faire une condition plus compacte
    Par LE NEINDRE dans le forum Langage
    Réponses: 4
    Dernier message: 28/10/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