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 :

Problème de SELECT imbriqués


Sujet :

Langage SQL

  1. #1
    Membre à l'essai
    Inscrit en
    Décembre 2011
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Décembre 2011
    Messages : 27
    Points : 15
    Points
    15
    Par défaut Problème de SELECT imbriqués
    Bonsoir,

    J'ai une table CLIENTS où j'ai un identifiant client, une table BILLETS où se trouve le numéro d'un billet et l'identifiant client (qui l'a acheté), et une table RESULTAT où se trouvent les résultats des tirages au sort (c'est un nombre appelé valeur) et le gain en euros:

    CLIENTS(id,nom,prenom)
    BILLETS(id_billet,#id_client,#date)
    RESULTAT(id_tirage,gain,date,valeur)
    Cette BDD gère en fait le tirage (1 par jour) au sort de billets que des clients ont achetés.

    Voilà mon problème:
    J'aimerais savoir combien de billets ont achetés chacun des clients ayant gagné plus de 10€.

    J'ai donc écrit la requête suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT CLIENTS.id,count(DISTINCT BILLETS.id_client) 
    FROM CLIENTS, BILLETS, RESULTAT 
    WHERE(
        SELECT sum(RESULTAT.gain) 
        FROM RESULTAT
    ) > 10 
    AND BILLETS.valeur=RESULTAT.numeros 
    AND BILLETS.date=RESULTAT.date 
    GROUP BY id;
    Sauf que le résultat que j'obtiens est complétement faux... A chaque client j'obtiens le même nombre...

    En fait je ne sais pas comment faire pour que la somme des gains soit faite uniquement pour un seul client à chaque fois...

    Je suis débutant en SQL, j'ai donc beaucoup de mal à expliquer mon problème...
    N'hésitez pas à poser des questions si cela n'est pas très clair!


  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    Bonjour,

    Comment fait-on la relation entre un billet gagnant et un tirage ?

    Je ne le vois pas modélisé dans votre schéma.

  3. #3
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 034
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 034
    Points : 23 779
    Points
    23 779
    Par défaut
    Bonjour,

    Puisque vous débutez en SQL, profitez-en pour prendre tout de suite de bonnes habitudes, notamment dans l'écriture des jointures, avec une syntaxe normalisée.
    Voici un excellent tutoriel pour vous aider : http://sqlpro.developpez.com/cours/sqlaz/jointures/
    Ensuite, la solution à votre problème passe certainement par l'utilisation de la clause HAVING. Vous trouverez également des exemples ici : http://sqlpro.developpez.com/cours/sqlaz/ensembles/

    Bon courage,

    ced

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

Discussions similaires

  1. Problème de select sur une date (DATETIME....)
    Par zeldoi5 dans le forum Langage SQL
    Réponses: 7
    Dernier message: 16/05/2005, 11h19
  2. [XSL] Petit problème de selection d'un noeud
    Par Greg L. dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 25/04/2005, 09h39
  3. Problème avec select top
    Par franculo_caoulene dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 10/12/2004, 14h55
  4. problème DBLookupListBox selection
    Par kardevlop dans le forum Bases de données
    Réponses: 11
    Dernier message: 17/08/2004, 11h53
  5. Requete select imbriqués avec plusieurs références
    Par GAlion dans le forum Langage SQL
    Réponses: 4
    Dernier message: 06/08/2004, 14h06

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