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 de Requête


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mai 2003
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 71
    Par défaut Problème de Requête
    bonjour à tous,

    j'ai un gros problème de requête.

    Je vais essayer de decrire mon probleme pour gagner en lisibilité :
    Voila, j'ai une table pour decrire des mouvements (souscription / rachat) sur des fonds (OPCVM). ces fonds sont affectes a des clients

    Table mouvements (simplifié) :
    =======================

    id_mouvement
    id_client (id du client auquel est affecte le mouvement)
    id_groupe_mouvements
    id_operation (1= souscription / 2 = rachat)
    nb_parts
    id_mouvement_ref (*)


    Un "groupe de mouvements" indique a quel fonds (OPCVM) et a quelle date le mouvement est reference :

    Table Groupe_Mouvements :
    ====================

    id_groupe_mouvements
    id_fonds
    date_cotation

    (*) Derniere chose : il arrive que des parts soient ré-affectés vers un autre client.
    Auquel cas, on cree une seconde ligne de mouvement, avec le champ "id_mouvement_ref" renseigné.

    Ex : 100 parts souscrites sur un fonds A pour le client "Cl1" => 1 ligne dans la table mouvements, id = idMvt1
    MAIS : 5 parts ré-affectés vers le client "Cl2", et 10 parts vers le client "Cl3" => 2 autres lignes dans la table, avec le champ "id_mouvement_ref=idMvt1"
    Quand on comptera les parts souscrites pour le client "cl1", il faudra, non pas compter 100 parts, mais 100 - 5 - 10 = 85 parts.


    Maintenant, que desire-je faire ?
    Compter l'ensemble des parts souscrites et rachetees pour un client et un fonds en particulier, en prenant en compte les éventuelles parts ré-affectés vers d'autres clients.


    Alors voilà la requete que je voulais faire au depart :

    select
    gm.id_fonds
    , sum(m1.nb_parts)
    , sum(m2.nb_parts) 'nbPartsReaffectes'
    from mouvements m1
    inner join groupe_mouvements gm on gm.id_groupe_mouvements=m1.id_groupe_mouvements
    left outer join mouvements m2 on m2.id_mouvements_ref=m1.id_mouvements

    where m1.id_client = [id de mon client]
    and gm.id_fonds = [id de mon fonds]

    group by m1.id_client, gm.id_fonds, m1.id_operation


    Evidemment ça ne me renvoie pas trop ce que je désire ... J'ai l'impression que ça me compte 2 fois des lignes ...

    Alors comment faire ?
    Suis je obligé de séparer en 2 requêtes ? L'une pour récupérer les parts souscrites et rachetées, l'autre pour récupérer les parts ré-affectés à d'autres clients ?

    Merci d'avance de m'éclairer, car là j'y suis depuis trop de temps ...

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 27
    Par défaut formule exacte?
    Bonsoir,

    c'est quoi la formule pour calculer le nombre de parts souscrites et rachetées? Qu'en fais-tu des parts réaffectées par rapport aux parts souscrites et rachetées? Ne faut-il pas les soustraires (dsl je n'y connais rien en finance )? Ou bien le rachat ça équivaut à la réaffectation ?
    Tu peux développer un peu ton exemple stp (qu'est ce qu'il va y avoir dans tes nouvelles lignes au juste)?
    Merci d'avance... (quand je réfléchis à une colle, j'aime bien trouver la solution ! )

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

Discussions similaires

  1. Réponses: 19
    Dernier message: 27/08/2003, 15h32
  2. problème de requête avec jointures
    Par tinhat dans le forum Requêtes
    Réponses: 7
    Dernier message: 11/08/2003, 10h33
  3. Problème de requètes concurentes
    Par Emmanuel.G dans le forum XMLRAD
    Réponses: 3
    Dernier message: 08/08/2003, 16h51
  4. Réponses: 2
    Dernier message: 16/07/2003, 14h40
  5. Problème dans requête avec count()
    Par BadFox dans le forum Requêtes
    Réponses: 3
    Dernier message: 08/07/2003, 18h02

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