MySQL Forums
Forum List  »  French

Re: Besoin d'aide sur une requête sur deux tables
Posted by: Marc G
Date: December 05, 2011 02:44AM

Bonjour,

Merci pour votre réponse, mais j'ai fini par trouver la requête qui me convenait. Des fois qu'elle puisse servir à d'autres :

SELECT
CONCAT_WS(' ',users.prenom,users.nom) AS 'Auteur',
SUM(IF(DATE_FORMAT(`docdate`,'%m')='01',1,0)) as 'Janvier',
SUM(IF(DATE_FORMAT(`docdate`,'%m')='02',1,0)) as 'Fevrier',
SUM(IF(DATE_FORMAT(`docdate`,'%m')='03',1,0)) as 'Mars',
SUM(IF(DATE_FORMAT(`docdate`,'%m')='04',1,0)) as 'Avril',
SUM(IF(DATE_FORMAT(`docdate`,'%m')='05',1,0)) as 'Mai',
SUM(IF(DATE_FORMAT(`docdate`,'%m')='06',1,0)) as 'Juin',
SUM(IF(DATE_FORMAT(`docdate`,'%m')='07',1,0)) as 'Juillet',
SUM(IF(DATE_FORMAT(`docdate`,'%m')='08',1,0)) as 'Aout',
SUM(IF(DATE_FORMAT(`docdate`,'%m')='09',1,0)) as 'Septembre',
SUM(IF(DATE_FORMAT(`docdate`,'%m')='10',1,0)) as 'Octobre',
SUM(IF(DATE_FORMAT(`docdate`,'%m')='11',1,0)) as 'Novembre',
SUM(IF(DATE_FORMAT(`docdate`,'%m')='12',1,0)) as 'Decembre',
SUM(IF(DATE_FORMAT(`docdate`,'%m')!='00',1,0)) as 'Total'
FROM docs
RIGHT JOIN users on users.userid=docs.userid
WHERE YEAR(docdate)='2011' AND docs.userid>0
GROUP BY docs.userid
ORDER BY Total DESC";

(le AND docs.userid>0 est une condition pour mon cas, mais elle n'est pas obligatoire).

Voilà, ce n'est probablement par la requête la plus élégante qui soit, mais au moins elle fait ce que je veux ! :)

Bonne journée,

Options: ReplyQuote


Subject
Views
Written By
Posted
Re: Besoin d'aide sur une requête sur deux tables
2347
December 05, 2011 02:44AM


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.