Bonjour !
J'ai donc des problèmes pour construire une requête SQL. Je ne suis pas très doué en SQL, et vu qu'habituellement j'ai des requêtes assez simple à construire j'y arrive, mais là...
Au cas où, je précise que j'utilise l'extension php mysql et donc la version 4.0 de mysql.
Pour commencer, j'ai les tables suivantes (simplifiées) :
Je pense que ces tables sont assez parlantes, je ne vais donc pas les détailler, à moins que vous me le demandiez.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 entreprise : idEnt : INT auto_increment clé primaire nom : varchar ... jours : idEnt : INT clé primaire jour : INT clé primaire (de 0 à 6 pour les jours de la semaine) demiJournee : enum('matin', 'aprem') clé primaire ...
Ce que je veux obtenir de ces tables :
Je voudrais savoir combien il y a d'entreprises qui ont au moins une ligne dans la table jours dont jour est égal à 3 par exemple.
Précision : je suis obligé de joindre la table entreprises car je dois aussi filtrer sur des infos de celle-ci.
J'ai essayé cette requête :
Mais si il y a des entreprises qui ont par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT COUNT(*) FROM entreprises e LEFT OUTER JOIN jours j ON j.idEnt = e.idEnt WHERE j.jour = 3
ben ça me compte l'entreprise 2 fois...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 |-idEnt----jour----demiJournee-| |---1--------3--------matin----| |---1--------3--------aprem----|
Comment faire ?
Merci d'avance !!
Partager