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

Langage SQL Discussion :

[Debutant]requete affichant toutes les allergies et maladies d'enfant


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 63
    Par défaut [Debutant]requete affichant toutes les allergies et maladies d'enfant
    Bonjour,

    Je cherche à faire une requete a fichant toutes les allergies et maladies d'enfant.

    Pour l'instant j'ai effectué la requête suivante uniquement quand j'ai une maladie et une allergie pour un enfant, quand j'ai qu'une allergie aucune ligne n'est renvoyée. En tant que débutante, j'essaie de m'orinter vers les left outer join ....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    select ALLERGIE_USAGER.CODENF as cenf, ALLERGIE_USAGER.CODE_ALLERGIE, ALLERGIE.libelle as allerg
    from ALLERGIE_USAGER ,  ALLERGIE,MALADIE_USAGER,maladie
    where 
      ALLERGIE_USAGER.CODENF = MALADIE_USAGER.CODENF and
     
    (ALLERGIE_USAGER.CODE_ALLERGIE= ALLERGIE.CODE_ALLERGIE and
    ALLERGIE_USAGER.URGENT = 1) and
     
    		 (MALADIE_USAGER.CODE_MALADIE= MALADIE.CODE_MALADIE
    			and  MALADIE_USAGER.URGENT = 1) and 
     
    ALLERGIE_USAGER.CODENF = 000194;
    Merci pour votre aide

  2. #2
    Membre émérite Avatar de Mathusalem
    Profil pro
    IT moa
    Inscrit en
    Décembre 2003
    Messages
    1 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : IT moa

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 008
    Par défaut
    voila déjà ton code écrit correctement

    quel est ton sgbd ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    SELECT 
    	au.CODENF AS cenf, 
    	au.CODE_ALLERGIE, 
    	a.libelle AS allerg
    FROM 
    ALLERGIE_USAGER     as au
    inner join ALLERGIE as a
    	on u.CODE_ALLERGIE = a.CODE_ALLERGIE
    inner join MALADIE_USAGER as u
    	on au.CODENF = u.CODENF
    inner join maladie as m
    	on u.CODE_MALADIE = m.CODE_MALADIE
    WHERE  
    	au.URGENT = 1
    	u.URGENT = 1 
    	au.CODENF = '000194' --si il y a des 0, c'est que c'est un code alphanumérique, donc des quotes

    je ne comprends pas quand tu dis :
    quand j'ai qu'une allergie aucune ligne n'est renvoyée
    Est-ce qu'on peut avoir un exemple de ce que tu voudrais avoir, ainsi que le DDL des tables ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 63
    Par défaut
    Je suis sous Oracle

    voilà plus d'infos sur les tables utilisées:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
     
    CREATE TABLE ALLERGIE_USAGER
    (codenf VARCHAR(8),
     Coda INTEGER,
     CONSTRAINT PK_ALLERGIE_USAGER PRIMARY KEY (codenf))
     
    INSERT INTO ALLERGIE_USAGER (codenf, Coda) 
    VALUES ('1094', 1)
    INSERT INTO ALLERGIE_USAGER (codenf, Coda) 
    VALUES ('1095', 1)
     
    CREATE TABLE MALADIE_USAGER
    (codenf VARCHAR(8),
     Codm INTEGER,
     CONSTRAINT PK_MALADIE_USAGER PRIMARY KEY (codenf))
     
    INSERT INTO MALADIE_USAGER (codenf, Codm) 
    VALUES ('1094', 1)
     
    CREATE TABLE ALLERGIE
    (Coda INTEGER,
    Libelle VARCHAR(50),
     CONSTRAINT PK_ALLERGIE PRIMARY KEY ((Coda))
     
    INSERT INTO ALLERGIE(Coda,Libelle) 
    VALUES (1,'Pollen')
     
    CREATE TABLE MALADIE
    (Codm INTEGER,
    Libelle VARCHAR(50),
     CONSTRAINT PK_MALADIE PRIMARY KEY ((Codm))
     
    INSERT INTO MALADIE(Codm,Libelle) 
    VALUES (1,'Rougeole')
     
    Le résutat attendu:
     
    Pour l'enfant 1094
    Allergies
    Pollen
    Maladies
    Rougeoles
     
    Pour l'enfant 1095
    Allergies
    Pollen
    Pour l'enfant 1095 j'ai qu'une ligne dans la table allergie_usager et rien dans la table maladie_usager

  4. #4
    Membre émérite Avatar de Mathusalem
    Profil pro
    IT moa
    Inscrit en
    Décembre 2003
    Messages
    1 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : IT moa

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 008
    Par défaut
    je ne comprends pas ton exemple, où est ce que tu dis dans la base, que l'enfant 1094 a la rougeolles ?




Discussions similaires

  1. Réponses: 4
    Dernier message: 05/08/2011, 17h19
  2. requete qui permet d'afficher tout les users
    Par menoran dans le forum Oracle
    Réponses: 1
    Dernier message: 18/05/2010, 02h54
  3. afficher toutes les images en meme temps
    Par dietrich dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 04/04/2006, 12h18
  4. [Debutant] Graphics : redefinir toute les methodes ?
    Par comme de bien entendu dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 01/02/2006, 11h43
  5. Réponses: 1
    Dernier message: 29/11/2005, 00h37

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