Skip navigation links

MySQL Forums :: French :: Besoin d'aide sur une requête sur deux tables


Advanced Search

Besoin d'aide sur une requête sur deux tables
Posted by: Marc G ()
Date: November 25, 2011 08:16AM

Bonjour à tous,

Je m'arrache les cheveux pour trouver la solution à mon petit problème, et c'est probablement faute de connaissances suffisantes...

J'ai deux tables : "users" et "docs"

La table "users" a trois champs : "userid", "prenom", "nom"
La table "docs" a aussi trois champs : "docid", "userid", "docdate" (docdate contient une date MySQL au format AAAA-MM-JJ).

Evidemment, le champ docs.userid fait référence à users.userid.

Voici le contenu de la table users :

<code>
userid | prenom | nom
1 | Jean | Valjean
2 | Victor | Hugo
</code>

La table docs contient les documents écrit à telle date, par tel user :

<code>
docid | userid | docdate
1 | 1 | 2011-01-10
2 | 1 | 2011-01-15
3 | 2 | 2011-02-01
4 | 1 | 2011-02-13
...
100 | 1 | 2011-11-25
</code>

L'idée est de trouver le nombre de documents qu'un utilisateur a écrit, mois par mois. Le résultat que j'aimerai obtenir ressemble à ce tableau

<code>
User | Janvier | Février | ... | Décembre |
Jean Valjean | 2 | 3 | ... | 1 |
Victor Hugo | 0 | 1 | ... | 4 |
</code>

Pour la concaténation prénom nom, c'est relativement simple, j'y arrive avec un

<code>
SELECT CONCAT_WS(' ',users.prenom,users.nom)
</code>

Je suis capable de faire la somme des documents écrits par tel user sur une période donnée, en continuant la requête ci-dessus avec

<code>
, COUNT(*) FROM docs WHERE docdate>='2011-01-01' AND docdate<'2011-01-02'
</code>

Ce qui me donne bien la somme des documents écrits pour la période du 1er janvier 2011 (inclus) au 1er février 2011 (exclu).

Comme vous l'avez compris, c'est déjà un premier pas mais hélas cela ne me permet pas d'obtenir le résultat escompté (à savoir le tableau avec la somme des écrits de chaque user mois par mois), d'autant plus qu'il faudrait que la requête fasse le tri des données pour une année précise (par exemple, 2011, sachant que la table documents va contenir des documents écrits en 2009, 2010...)

Auriez-vous une idée ou une piste à me suggérer ? Merci !

Options: ReplyQuote


Subject Views Written By Posted
Besoin d'aide sur une requête sur deux tables 1479 Marc G 11/25/2011 08:16AM
Re: Besoin d'aide sur une requête sur deux tables 894 Jean Molliné 12/04/2011 02:20PM
Re: Besoin d'aide sur une requête sur deux tables 1053 Marc G 12/05/2011 02:44AM
Re: Besoin d'aide sur une requête sur deux tables 770 Elie Bouboun 03/04/2012 08:29AM
Re: Besoin d'aide sur une requête sur deux tables 774 Jean Molliné 03/04/2012 09:33AM
Re: Besoin d'aide sur une requête sur deux tables 733 Elie Bouboun 03/04/2012 01:04PM
Re: Besoin d'aide sur une requête sur deux tables 769 Jean Molliné 03/04/2012 01:14PM
Re: Besoin d'aide sur une requête sur deux tables 810 Elie Bouboun 03/05/2012 04:42AM
Re: Besoin d'aide sur une requête sur deux tables 698 Jean Molliné 03/05/2012 04:53AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.