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

Requêtes MySQL Discussion :

Problème : requêtes sans résultat


Sujet :

Requêtes MySQL

  1. #1
    Membre actif
    Inscrit en
    Décembre 2006
    Messages
    205
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 205
    Points : 240
    Points
    240
    Par défaut Problème : requêtes sans résultat
    Bonjour;
    Je suis sous mysql server 5 et je travaille avec mysql browser.
    J'ai fait 4 requêtes qui ne donnent aucune ligne en résultat et il n' y a pas de message d'erreur non plus.
    Cela fait 2 heures que je cherche la source d'erreur.
    Pouvez-vous me dire si vous voyez des fautes de logique?
    Le mpd donne une table compte (contenant id_etudiant, le montant des factures, montant des versements, no_facture...) reliée à une table étudiant (contenant id_etudiant, le nom_etudiant ...) elle-même (etudiant) reliée à une table inscription (contenant id_etudiant, id_cursus, no_inscription...) elle-même (inscription) reliée à une table cursus (contenant id_cursus, nom_cursus, prix_cursus...).
    D'avance merci.

    Voici le code:
    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
     
    VI.    Listez le total des factures faites aux étudiants regroupées par cursus en montrant les id_cursus et les noms de cursus
     
    SELECT c.id_cursus, c.nom_cursus,
    COUNT(co.no_facture) 'Total factures'
    FROM compte co, cursus c, etudiant e, inscription i
    WHERE co.id_etudiant = e.id_etudiant
    AND e.id_etudiant = i.id_etudiant
    AND i.id_cursus = c.id_cursus
    GROUP BY c.id_cursus;
     
     
    VII.    A partir de la requête précédente, ajoutez une colonne indiquant le total qui devrait être facturé en faisant référence au prix du cursus
     
    SELECT c.id_cursus, c.nom_cursus, c.prix_cursus,
    COUNT(co.no_facture) 'Total factures',
    SUM(co.montant_facture) 'Total à facturer'
    FROM compte co, cursus c, etudiant e, inscription i
    WHERE co.id_etudiant = e.id_etudiant
    AND e.id_etudiant = i.id_etudiant
    AND i.id_cursus = c.id_cursus
    GROUP BY c.id_cursus;
     
     
    VIII.    Faites un état des comptes étudiants ; on veut voir les noms, le total des factures, celui des versements et le solde de chaque compte
     
    SELECT e.nom_etudiant,
    SUM(co.montant_facture) 'Total factures',
    SUM(co.montant_versement) 'Total versements',
    (SUM(co.montant_facture) - SUM(co.montant_versement)) 'SOLDE'
    FROM compte co, etudiant e
    WHERE co.id_etudiant = e.id_etudiant
    GROUP BY e.nom_etudiant;
     
     
    IX.    A partir de la requête précédente, n’éditez plus que les comptes créditeurs (qui ont plus payé qu’ils ne sont facturés)
     
    SELECT e.nom_etudiant,
    SUM(co.montant_facture) 'Total factures',
    SUM(co.montant_versement) 'Total versements',
    (SUM(co.montant_facture) - SUM(co.montant_versement)) 'COMPTES CREDITEURS'
    FROM compte co, etudiant e
    WHERE co.id_etudiant = e.id_etudiant
    GROUP BY e.nom_etudiant
    HAVING (SUM(co.montant_facture) - SUM(co.montant_versement)) < 0;

  2. #2
    Membre éprouvé
    Avatar de Sivrît
    Profil pro
    Inscrit en
    Février 2006
    Messages
    953
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 953
    Points : 1 249
    Points
    1 249
    Par défaut
    A première vue au moins les deux premières me semblent bonnes (je n'ai pas poussé plus loin). Donc si elles ne retournent rien... il y a quoi dans les tables ? Il y a bien un étudiant au moins pour lequel les 4 tables sont remplies ?

    Sinon je suggère de faire les jointures avec JOIN pour plus de clarté. Ca permet de bien voir si elles sont bien complètes (où que l'on a pas une clause qui ne sert à rien). Et "JOIN etudiant e USING (id_etudiant)" n'est guère plus verbeux.

  3. #3
    Membre actif Avatar de Roy Miro
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    273
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 273
    Points : 290
    Points
    290
    Par défaut
    cette commande affiche qqch ou pas?
    Comment as-tu initialisé tes tables avec des fichiers .txt? Car ce format pose pbl ...

Discussions similaires

  1. [CR 9]Traitement de requête sans résultat
    Par zycomatic dans le forum SAP Crystal Reports
    Réponses: 10
    Dernier message: 30/06/2008, 17h08
  2. [postgresql] Requête sans résultat
    Par speedev dans le forum PostgreSQL
    Réponses: 10
    Dernier message: 08/11/2007, 14h01
  3. retourner zero sur une requète sans résultat
    Par kelek33 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 04/10/2007, 16h27
  4. Requête sans résultat
    Par lito74 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 15/09/2006, 15h16
  5. RecordSource avec une requête sans résultat
    Par temar dans le forum Access
    Réponses: 4
    Dernier message: 23/05/2006, 18h13

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