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 :

Problème en SQL


Sujet :

SQL Oracle

  1. #1
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2014
    Messages : 8
    Par défaut Problème en SQL
    j'ai utilisé cette requête dans sqlplus et ça marche pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    select count(distinct nummed),count(specialite)
    from medecin,soigne
    where num_patient in (select count(nummed)
                             from soigne);
    la question c'est:
    (Pour chaque patient soigné par plus de 3 médecins donner le nombre total de ses médecins ainsi que le nombre correspondant de spécialités médicales concernées).

  2. #2
    Membre confirmé
    Inscrit en
    Avril 2011
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 135
    Par défaut
    Bonjour,
    Tout d'abord j'ai des questions et des suggestions :
    Pourquoi vous avez utilisé Distinct nummed ? est ce que la colonne nummed représente une clé primaire?
    Vous avez utilisé deux tables, donc vous devez faire une jointure entre eux.
    Merci de nous fournir la structure de 2 tables par exemple Medecin(Nummed,...)

    Vous pouvez essayer cette proposition :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SELECT Count(nummed) "Nombre de médecins", Count(specialite) "Nombre de spécialités" 
    FROM Medecin
    JOIN Soigne
    ON --clés de jointure
    GROUP BY num_patient
    HAVING Count(nummed) > 3;

  3. #3
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2014
    Messages : 8
    Par défaut probleme en sql
    les tables:
    PATIENT (NUM-PATIENT, NOM-PATIENT, PRENOM-PATIENT, ADRESSE-PATIENT, TEL-PATIENT, MUTUELLE);
    MEDECIN (NUM-MED, SPECIALITE);
    HOSPITALISATION (NUM-PATIENT, CODE_SERVICE, NUM_CHAMBRE, LIT);
    j'ai essayer votre suggestion mais ça marche pas :/

  4. #4
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 136
    Par défaut
    Citation Envoyé par Sa mira Voir le message
    ça marche pas :/
    Mais encore... ?
    Un message d'erreur ?
    Un résultat qui ne correspond pas à celui attendu ? De quelle manière ?
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  5. #5
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2014
    Messages : 8
    Par défaut
    l’erreur c'est dans la ligne 5( GROUP BY num_patient)

    ORA-00936: expression absente dans la ligne 5

  6. #6
    Membre confirmé
    Inscrit en
    Avril 2011
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 135
    Par défaut
    Bonsoir,
    A mon avis, il manque d'autres tables ! si non comment on peut lier la table patient avec celle de medecin? il se peut qu'il y en a une autre table par exemple service qui est liée à la table medecin.
    Où est-elle la structure de la table soigne?
    Merci de ré-vérifier.

  7. #7
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 136
    Par défaut
    Il est bien difficile de t'aider avec les informations partielles et inexactes que tu donnes :
    • Tu n'indiques pas la structure de la table soigne
    • La colonne nummed se nomme ailleurs num-med (ce qui par ailleurs est invalide)
    • ..
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  8. #8
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2014
    Messages : 8
    Par défaut
    les tables:
    SERVICE (CODESERVICE, NOMSERVICE, BATIMENT, DIRECTEUR)
    CHAMBRE (CODESERVICE, NUMCHAMBRE, SURVEILLANT, NBLITS)
    EMPLOYE (NUMEMP, NOMEMP, PRENOMEMP, ADRESSEEMP, TELEMP)
    MEDECIN (NUMMED, SPECIALITE)
    INFIRMIER (NUMINF, CODESERVICE, ROTATION, SALAIRE)
    PATIENT (NUM-PATIENT, NOM-PATIENT, PRENOM-PATIENT, ADRESSE-PATIENT, TEL-PATIENT, MUTUELLE)
    HOSPITALISATION (NUM-PATIENT, CODESERVICE, NUMCHAMBRE, LIT)
    SOIGNE (NUM-PATIENT, NUMMED)

  9. #9
    Membre confirmé
    Inscrit en
    Avril 2011
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 135
    Par défaut
    Bonsoir,
    Veuillez-essayer cette proposition :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    select S.Num_Patient,count(m.num_med) "Nombre de médecins",count( distinct m.specialite) "Nombre de spécialités"
    from medecin m
    join soigne s
    on M.Num_Med=S.Num_Med
    group by S.Num_Patient
    having count(m.num_med)>3;
    Résultat de cette requête :
    Images attachées Images attachées  

  10. #10
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2014
    Messages : 8
    Par défaut
    Merci !!
    ça marche bien

  11. #11
    Membre confirmé
    Inscrit en
    Avril 2011
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 135
    Par défaut
    Bonjour,
    Bien.
    Merci de mettre le sujet résolu et fermer la discussion.

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

Discussions similaires

  1. Problème requete SQL
    Par tonyskn dans le forum Langage SQL
    Réponses: 3
    Dernier message: 14/11/2004, 20h37
  2. problème requete sql
    Par Fred- dans le forum ASP
    Réponses: 2
    Dernier message: 13/06/2004, 02h20
  3. Problème réplication SQL Server et SQL Server CE (RDA)
    Par didix11 dans le forum Réplications
    Réponses: 2
    Dernier message: 15/04/2004, 11h10
  4. Problème Requete SQL et QuickReport
    Par arnaud_verlaine dans le forum C++Builder
    Réponses: 7
    Dernier message: 07/01/2004, 09h31
  5. Réponses: 8
    Dernier message: 23/10/2003, 16h22

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