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 :

Requête conditionnelle sur une table


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 1
    Par défaut Requête conditionnelle sur une table
    Bonjour à tous,

    Je cherche à faire une requête contenant des conditions.
    Mon exemple est tout simple, je veux afficher des évènements.
    TBL_EVENT : ID | DATE_DEBUT | DATE_FIN | DESCRIPTION

    Je voudrais que ma requête retourne les évènements futur (qui ne sont pas encore fini) ou S'IL N'Y EN A PAS les évènements passé de cette année ou S'IL N'Y EN A PAS les évènements de l'année dernière ... le tout dans une seule requête.
    Sauf que j'ai aucune idée de comment inclure des conditions dans une requête ?

    Merci de votre aide.

    Chris.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 270
    Par défaut
    Si tu ne sais pas inclure une condition dans une requette, tu devrais commencer par lire un bouquin ou un support.

    Et pour ton problème tu cherches dans les chapitre "clause where" et "exists".

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Août 2008
    Messages
    861
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 861
    Par défaut
    Un peu de lecture : http://sqlpro.developpez.com/cours/sqlaz/select/

    Pour ton problème, ce n'est pas le genre de condition qui s'introduit facilement dans une clause WHERE.
    Je te propose ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    select * 
    from event
    where date_fin > trunc(sysdate,'dd') or date_fin is null
    UNION all
    select * 
    from event
    where not exists
          (
           select * 
           from event
           where date_fin > trunc(sysdate,'dd') or date_fin is null
          )
    and trunc(date_fin,'yyyy') = (select trunc(max(date_fin),'yyyy') from event)

Discussions similaires

  1. Requête conditionnelle sur une même table
    Par grafistolage dans le forum Langage SQL
    Réponses: 9
    Dernier message: 14/02/2010, 23h49
  2. [AC-2003] Requête UPDATE sur une table sans relation
    Par SIGER_971 dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 09/07/2009, 09h02
  3. Réponses: 5
    Dernier message: 04/05/2009, 14h56
  4. Problème de requête Access sur une table Oracle
    Par Poulki dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 31/01/2008, 16h57
  5. Réponses: 4
    Dernier message: 27/12/2006, 21h53

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