Bonjour,
J'ai un petit problème pour regrouper des requêtes sous mysql. Voilà, je possède trois tables comme ceci :
members(name_member,id_member,key_contact,total_emp)
contacts(name_contact,id_contact)
redflag(id_record,id_member,date_added)
mon objectif est de sortir 6 colonnes:
-name_member
-id_member
-name_contact
-total_emp
-new_record
-total_record
Les colonnes name_member, id_member et total_emp sont lisibles directement dans la table members;
La colonne name_contact est déterminé en reliant le key_contact de members avec le id_contact de contacts et en lisant name_contact dans contacts.
Les deux dernières colonnes me posent cependant problème:
-new_record doit sortir le nombre de id_record de chaque id_member sur une période de temps donnée
-total_record la même chose sans restriction de temps.
J'ai réalisé trois requêtes séparées qui semblent fonctionner; je souhaiterais les réunir en une seule, ce qui ne semble pas facile, j'ai essayé avec des RIGHT JOIN ect, mais je piétine...
Pour les 4 premières colonnes:
Pour la colonne avec le count sur une période de temps définie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT members.name_member, members.id_member, contacts.name_contact, members.total_emp FROM members, contacts WHERE contacts.contact_id = members.key_contact
Pour le count sans période de temps restrictive
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT members.name_member, members.id_member, members.total_emp, count(redflag.id_record) FROM members, redflag WHERE redflag.date_added BETWEEN '2002-08-22 00:00:00' AND '2011-08-22 23:59:59' GROUP BY members.name_member
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT members.name_member, members.id_member, members.total_emp, count(redflag.id_record) FROM members, redflag GROUP BY members.name_member
Je vous remercie par avance pour votre aide,
bouket
Partager