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 sql


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Etudiant Ingénieur
    Inscrit en
    Avril 2011
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Etudiant Ingénieur
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 25
    Par défaut Requête sql
    Svp, je ne suis pas arrivé à résoudre les requêtes suivantes si quelqu'un peut m'aidez et merci d'avance :

    -Les noms des clients qui ont commandé tous les produits commandés par le client N°3.

    CLIENT(Numcli : NUMBER (7), Nom : VARCHAR(20), Prénom : VARCHAR(20)) ;

    COMMANDE(Numcom : NUMBER (7), Numcli : NUMBER (7)) ;

    PRODUIT (Numprod : NUMBER (7), Designation : VARCHAR (30)) ;

    LIGNE_COMMANDE (Numprod : NUMBER (10), Numcom : NUMBER(7) ) ;

    voila ce que j'ai fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    select distinct(nom) from client c,commande cmd,ligne_commande l,produit p
    where c.NUMCLI=cmd.NUMCLI and cmd.NUMCOM=l.NUMCOM and l.NUMPROD=p.numprod and exists(
    select p.numprod from produit p,commande cmd,client c,ligne_commande l
    where c.NUMCLI=3
    and c.NUMCLI=cmd.NUMCLI
    and cmd.NUMCOM=l.NUMCOM
    and l.numprod=p.numprod);
    et merci encore un fois .

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 134
    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 134
    Par défaut
    Présente nous les requêtes que tu as essayées.
    Nous pourrons alors t'aider à les mettre au point.
    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.

  3. #3
    Membre confirmé
    Homme Profil pro
    Data Ingenieur
    Inscrit en
    Mai 2006
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Data Ingenieur
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2006
    Messages : 133
    Par défaut
    Bonjour,

    Je sais que c'est un forum d'aide mais tu n'as pas une ébauche de requête comme ça on pourra plus te dire les erreurs et te conseiller. Car honnêtement quand on lit ton sujet ça ressemble a mes anciens cours où contrôle de SQL donc te donner la réponse sans que tu réfléchisses tu ne vas pas comprendre mieux !

  4. #4
    Membre actif
    Homme Profil pro
    Etudiant Ingénieur
    Inscrit en
    Avril 2011
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Etudiant Ingénieur
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 25
    Par défaut
    voici ce que j'ai arrivé a faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    SELECT DISTINCT(nom) FROM client c,commande cmd,ligne_commande l,produit p
    WHERE c.NUMCLI=cmd.NUMCLI AND cmd.NUMCOM=l.NUMCOM AND l.NUMPROD=p.numprod AND EXISTS(
    SELECT p.numprod FROM produit p,commande cmd,client c,ligne_commande l
    WHERE c.NUMCLI=3
    AND c.NUMCLI=cmd.NUMCLI
    AND cmd.NUMCOM=l.NUMCOM
    AND l.numprod=p.numprod);
    veuillez me donner vos propositions et merci.

  5. #5
    Membre actif
    Homme Profil pro
    Etudiant Ingénieur
    Inscrit en
    Avril 2011
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Etudiant Ingénieur
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 25
    Par défaut
    voila mon nouveau essai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    select distinct(nom),p.numprod from client c,commande cmd,ligne_commande l1,produit p
    where c.NUMCLI=cmd.NUMCLI and cmd.NUMCOM=l1.NUMCOM and l1.NUMPROD=p.numprod and exists(
    select p.numprod from produit p,commande cmd,client c,ligne_commande l
    where c.NUMCLI=3
    and c.NUMCLI=cmd.NUMCLI
    and cmd.NUMCOM=l.NUMCOM
    and l.numprod=p.numprod
    and l.numprod=l1.numprod);

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

    Informations forums :
    Inscription : Août 2008
    Messages : 2 953
    Par défaut
    Si c'est pour un cours ça n'est définitivement pas une requette facile.
    Regarde l'article de SqlPro sur la division relationnelle pour te mettre sur une bonne voie.

    Par contre dans la requête que tu proposes il y a 2 problèmes :
    - Les alias de la requête principale et de la sous-requête sont identiques ce qui est faux, il doivent être différents.
    - DISTINCT n'est pas une fonction. Il s'applique sur toute la ligne, les parenthèses autour de nom sont donc superflues.

    N'hésite pas à revenir avec une autre proposition t'inspirant de l'article de SqlPro, si tu as toujours des difficultés avec la requête.

Discussions similaires

  1. Requête SQL
    Par Leludo dans le forum Langage SQL
    Réponses: 3
    Dernier message: 12/07/2024, 15h41
  2. [ DB2 ] [ AS400] requête sql
    Par zinaif dans le forum DB2
    Réponses: 6
    Dernier message: 23/08/2008, 19h42
  3. Utilisation de MAX dans une requête SQL
    Par Evil onE dans le forum Langage SQL
    Réponses: 7
    Dernier message: 15/06/2004, 18h38
  4. A propos d'une requête SQL sur plusieurs tables...
    Par ylebihan dans le forum Langage SQL
    Réponses: 2
    Dernier message: 14/09/2003, 16h26
  5. PB requète SQL avec Interbase
    Par missllyss dans le forum InterBase
    Réponses: 2
    Dernier message: 15/07/2003, 11h37

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