Requète SQL
Résolu/Fermé
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
-
9 sept. 2016 à 17:00
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 - 28 sept. 2016 à 14:08
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 - 28 sept. 2016 à 14:08
A voir également:
- Requète SQL
- Sql lister les tables ✓ - Forum Programmation
- Récupération serveur sql - Télécharger - Gestion de données
- Blob sql ✓ - Forum Webmastering
- Erreur lors de l'envoi de la requête facebook marketplace - Forum Facebook
- La requête graphql n’est pas autorisée facebook - Forum Facebook
27 réponses
jordane45
Messages postés
38263
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
28 octobre 2024
4 693
9 sept. 2016 à 17:18
9 sept. 2016 à 17:18
Bonjour,
1 - tu utilises l'ancienne extension Mysql (considérée comme obsolète ! )
Je t'invite fortement à passer à mysqli ou ( perso je préfère...) la PDO.
Je t'invite à lire ceci :
- https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete
- https://www.commentcamarche.net/faq/44117-connexion-a-une-base-avec-pdo-mysqli
2 - Ton souci concerne la requête elle même ou le code PHP qui l'exécute ?
Si le souci concerne UNIQUEMENT ta requête... c'est dans le forum Bases de données qu'il faut la poser (je pourrais y déplacer cette discussion si besoin).
3 - Je ne suis pas sûr d'avoir compris ta question...
En fait tu cherches à récupérer la liste des postes non-occupés c'est ça ?
Donc les POSTES dont l'ID ne serait pas présent dans la table cdc_gerer... non ?
Un truc du genre :
1 - tu utilises l'ancienne extension Mysql (considérée comme obsolète ! )
Je t'invite fortement à passer à mysqli ou ( perso je préfère...) la PDO.
Je t'invite à lire ceci :
- https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete
- https://www.commentcamarche.net/faq/44117-connexion-a-une-base-avec-pdo-mysqli
2 - Ton souci concerne la requête elle même ou le code PHP qui l'exécute ?
Si le souci concerne UNIQUEMENT ta requête... c'est dans le forum Bases de données qu'il faut la poser (je pourrais y déplacer cette discussion si besoin).
3 - Je ne suis pas sûr d'avoir compris ta question...
En fait tu cherches à récupérer la liste des postes non-occupés c'est ça ?
Donc les POSTES dont l'ID ne serait pas présent dans la table cdc_gerer... non ?
Un truc du genre :
SELECT * FROM cdc_fonctions WHERE idfonc NOT IN (SELECT idfonc FROM cdc_gerer );
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
9 sept. 2016 à 21:36
9 sept. 2016 à 21:36
Bonjour
En fait il faut que je récupére l'ID de la table cdc_fonction qui est dans la table cdc_gerer et qui à une date de fin vide.
Si tu peux regarder à la ligne 22 sur mon premier post je crois que c'est cela qui ne va pas.
Pour tout te dire je suis perdu.
Lorsque j'avais aucune entrée dans la table cdc_gerer voilà ce que la requète me retournait...
lorsque j'ai fait les entrées
La structure de la table cdc_gerer
Merci
En fait il faut que je récupére l'ID de la table cdc_fonction qui est dans la table cdc_gerer et qui à une date de fin vide.
Si tu peux regarder à la ligne 22 sur mon premier post je crois que c'est cela qui ne va pas.
Pour tout te dire je suis perdu.
Lorsque j'avais aucune entrée dans la table cdc_gerer voilà ce que la requète me retournait...
Président: poste vacant Secrétaire: poste vacant Trésorier: poste vacant
lorsque j'ai fait les entrées
Président: Dupont Pierre Secrétaire: Dupont Paul
La structure de la table cdc_gerer
idpers idfonc ddebut dfin int(11) int(11) date date
Merci
jordane45
Messages postés
38263
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
28 octobre 2024
4 693
9 sept. 2016 à 23:46
9 sept. 2016 à 23:46
Tu peux tester cette requête et me dire ce qu'elle te donne ?
SELECT CP.nom ,CP.prenom ,CF.fonction ,CP.fnbur FROM dc_fonctions CF LEFT JOIN cdc_gerer CG ON CG.idfonc = CF.idfonc LEFT JOIN cdc_personnes CP ON CP.idpers = CG.idpers WHERE CG.dfin = 0 ORDER BY fnbur DESC,fonction,nom,prenom
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
Modifié par papyclic le 10/09/2016 à 13:53
Modifié par papyclic le 10/09/2016 à 13:53
Bonjour
Merci de ta réponse malheureusement elle ne me retourne pas les postes vacants....
J'ai juste corrigé
CF.fnbur au lieu de CP.fnbur
Merci de ta réponse malheureusement elle ne me retourne pas les postes vacants....
J'ai juste corrigé
CF.fnbur au lieu de CP.fnbur
jordane45
Messages postés
38263
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
28 octobre 2024
4 693
10 sept. 2016 à 15:11
10 sept. 2016 à 15:11
Tu l'as testé directement dans ta bdd hein ?
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
10 sept. 2016 à 16:28
10 sept. 2016 à 16:28
je viens de la tester et cela me retourne uniquement les fonctions dont la date est vide.
Pour essayer d'être encore mieux explicite...
Par exemple la fonction "Président-Adjoint" dans le passé cette fonction était occupé mais plus aujourd'hui donc il y a une date de début et une date de fin donc le poste est vacant.
Pour essayer d'être encore mieux explicite...
Par exemple la fonction "Président-Adjoint" dans le passé cette fonction était occupé mais plus aujourd'hui donc il y a une date de début et une date de fin donc le poste est vacant.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
10 sept. 2016 à 16:33
10 sept. 2016 à 16:33
en rajoutant
WHERE CG.dfin IS NULL
cela me retourne les fonctions également qui n'ont jamais été occupé
WHERE CG.dfin IS NULL
cela me retourne les fonctions également qui n'ont jamais été occupé
jordane45
Messages postés
38263
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
28 octobre 2024
4 693
11 sept. 2016 à 02:46
11 sept. 2016 à 02:46
Donc c'est bon non ?
Par contre c'est un OR que j'aurai mis dans la requête :
Par contre c'est un OR que j'aurai mis dans la requête :
SELECT CP.nom ,CP.prenom ,CF.fonction ,CP.fnbur FROM dc_fonctions CF LEFT JOIN cdc_gerer CG ON CG.idfonc = CF.idfonc LEFT JOIN cdc_personnes CP ON CP.idpers = CG.idpers WHERE CG.dfin = 0 OR CG.dfin IS NULL ORDER BY fnbur DESC,fonction,nom,prenom
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
11 sept. 2016 à 07:47
11 sept. 2016 à 07:47
Bonjour,
Non ce n'ai toujours pas ce que je souhaite malheureusement.
Les entrées retournées sont les fonctions dont la date de fin est "0000-00-00" ou NULL c'est à dire jamais occupé c'est déja ça...
Maintenant il faudrait également les fonctions qui ne sont pas occupées actuellement, mais qu'elles l'ont été dans le passé.
exemple
Président-Adjoint poste occupé 2012-02-04 au 2015-03-01 aujourd'hui Poste vacant.
Merci de ton aide.
Non ce n'ai toujours pas ce que je souhaite malheureusement.
Les entrées retournées sont les fonctions dont la date de fin est "0000-00-00" ou NULL c'est à dire jamais occupé c'est déja ça...
Maintenant il faudrait également les fonctions qui ne sont pas occupées actuellement, mais qu'elles l'ont été dans le passé.
exemple
Président-Adjoint poste occupé 2012-02-04 au 2015-03-01 aujourd'hui Poste vacant.
Merci de ton aide.
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
11 sept. 2016 à 23:12
11 sept. 2016 à 23:12
Bonjour,
Pouvez-vous essayez de m'aider s'ils vous plait, je commence à désespérer pour trouver la solution à mon problème.
Je vous remercie.
Bonne nuit à tous.
Pouvez-vous essayez de m'aider s'ils vous plait, je commence à désespérer pour trouver la solution à mon problème.
Je vous remercie.
Bonne nuit à tous.
jordane45
Messages postés
38263
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
28 octobre 2024
4 693
11 sept. 2016 à 23:20
11 sept. 2016 à 23:20
Maintenant il faudrait également les fonctions qui ne sont pas occupées actuellement, mais qu'elles l'ont été dans le passé.
Dans ce cas, tu ajoutes dans ton where une condition sur la date tout simplement.... (http://www.w3schools.com/sql/func_now.asp)
Un truc du genre
SELECT CP.nom ,CP.prenom ,CF.fonction ,CP.fnbur FROM dc_fonctions CF LEFT JOIN cdc_gerer CG ON CG.idfonc = CF.idfonc LEFT JOIN cdc_personnes CP ON CP.idpers = CG.idpers WHERE CG.dfin = '0000-00-00' OR CG.dfin IS NULL OR CG.dfin <now() ORDER BY fnbur DESC,fonction,nom,prenom
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
12 sept. 2016 à 06:59
12 sept. 2016 à 06:59
Bonjour
En fait j'avais déjà essayé mais cela me rencoie toutes les fonctions avec une dates de fin avant la date d'aujourd'hui. Je me pose la question si cela est possible avec le nombre de tutos sur les dates que j'ai regardé.
Il faut me retourner les fonctions innocupées, malgrès tout elles ont quand même une date de fin puisque elles ont été occupé à un moment donnée.
Peut-être la structure de ma table est à revoir?
Merci encore de ton aide.
En fait j'avais déjà essayé mais cela me rencoie toutes les fonctions avec une dates de fin avant la date d'aujourd'hui. Je me pose la question si cela est possible avec le nombre de tutos sur les dates que j'ai regardé.
Il faut me retourner les fonctions innocupées, malgrès tout elles ont quand même une date de fin puisque elles ont été occupé à un moment donnée.
Peut-être la structure de ma table est à revoir?
Merci encore de ton aide.
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
12 sept. 2016 à 19:12
12 sept. 2016 à 19:12
bonjour,
Excusez moi d'insister mes encore une grande partie de la journée à essayer de trouver la solution mais en vain.
J'espère encore trouver de l'aide.
je vous remercie.
Excusez moi d'insister mes encore une grande partie de la journée à essayer de trouver la solution mais en vain.
J'espère encore trouver de l'aide.
je vous remercie.
jordane45
Messages postés
38263
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
28 octobre 2024
4 693
13 sept. 2016 à 09:41
13 sept. 2016 à 09:41
Il faudrait un dump (structure + données) pour essayer de comprendre ce qui bloque et comment est fait ta BDD.
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
13 sept. 2016 à 14:51
13 sept. 2016 à 14:51
Bonjour, Voici le lien pour la table cdc_gerer
https://www.cjoint.com/c/FInmW7MlmbM
https://www.cjoint.com/c/FInmW7MlmbM
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
13 sept. 2016 à 14:54
13 sept. 2016 à 14:54
Voici le lien pour la table cdc_fonctions
https://www.cjoint.com/c/FInm1r0rmkM
Merci d'essayer de m'aider
https://www.cjoint.com/c/FInm1r0rmkM
Merci d'essayer de m'aider
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
13 sept. 2016 à 23:01
13 sept. 2016 à 23:01
Bonjour,
avec les 2 liens des captures de mes tables, cela t'aiderai à mieux comprendre pour essayez de m'aider s'il te plait? je suis perdu.
Je te remercie.
Bonne nuit
avec les 2 liens des captures de mes tables, cela t'aiderai à mieux comprendre pour essayez de m'aider s'il te plait? je suis perdu.
Je te remercie.
Bonne nuit
jordane45
Messages postés
38263
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
28 octobre 2024
4 693
13 sept. 2016 à 23:37
13 sept. 2016 à 23:37
Sauf que c'est un DUMP de tes tables qu'il me faut ;... pas une capture écran ....
Je ne vais pas m'amuser à recréer tes tables à la main alors qu'un DUMP me permet de les créer automatiquement ....
Je ne vais pas m'amuser à recréer tes tables à la main alors qu'un DUMP me permet de les créer automatiquement ....
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
14 sept. 2016 à 07:19
14 sept. 2016 à 07:19
Bonjour
La table cdc_fonctions
https://www.cjoint.com/c/FIoe7d5POUM
La table cdc_gerer
https://www.cjoint.com/c/FIofauHz1iM
La table cdc_personnes
https://www.cjoint.com/c/FIofsICB1OM
Je te remercie pour ton aide
Bonne journée
La table cdc_fonctions
https://www.cjoint.com/c/FIoe7d5POUM
La table cdc_gerer
https://www.cjoint.com/c/FIofauHz1iM
La table cdc_personnes
https://www.cjoint.com/c/FIofsICB1OM
Je te remercie pour ton aide
Bonne journée
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
15 sept. 2016 à 19:38
15 sept. 2016 à 19:38
Bonjour,
je suis toujours à la recherche d'une solution à mon problème en fait.
Merci
je suis toujours à la recherche d'une solution à mon problème en fait.
Merci
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
17 sept. 2016 à 07:02
17 sept. 2016 à 07:02
Bonjour
Personnes pour essayer de me venir en aide s'ils vous plait.
Cela viens bien de ma requète en fait si vous pouvez déplacer ce post comme me l'a proposé "jordane45" en vous remerciant.
J'essaie de tourner ma requète dans tous les sens mais je n'y arrive pas.
Merci.
Personnes pour essayer de me venir en aide s'ils vous plait.
Cela viens bien de ma requète en fait si vous pouvez déplacer ce post comme me l'a proposé "jordane45" en vous remerciant.
J'essaie de tourner ma requète dans tous les sens mais je n'y arrive pas.
Merci.
jordane45
Messages postés
38263
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
28 octobre 2024
4 693
17 sept. 2016 à 21:29
17 sept. 2016 à 21:29
Après avoir chargé tes données et regarder ce qu'il y avait dedans... je ne suis plus très sûr de ce que tu cherches à obtenir.....
Pourrais tu nous faire un dessin ? ( dans un tableau excel... présente nous ce que tu souhaites obtenir comme tableau en te basant sur les données que tu nous as transmis sur ci-joint)
Pourrais tu nous faire un dessin ? ( dans un tableau excel... présente nous ce que tu souhaites obtenir comme tableau en te basant sur les données que tu nous as transmis sur ci-joint)
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
18 sept. 2016 à 06:08
18 sept. 2016 à 06:08
Bonjour,
Comme convenu je te joint le fichier excel cela vous montre exactement ce que je souhaiterai obtenir.
Encore merci de m'aider
https://www.cjoint.com/c/FIsegiNAPjM
Comme convenu je te joint le fichier excel cela vous montre exactement ce que je souhaiterai obtenir.
Encore merci de m'aider
https://www.cjoint.com/c/FIsegiNAPjM
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
22 sept. 2016 à 14:05
22 sept. 2016 à 14:05
Bonjour
Je suis toujours à la recherche d'une solution, si une personne pourrai m'aider s'ils vous plait
Je vous remercie.
Bonne journée
Je suis toujours à la recherche d'une solution, si une personne pourrai m'aider s'ils vous plait
Je vous remercie.
Bonne journée
jordane45
Messages postés
38263
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
28 octobre 2024
4 693
22 sept. 2016 à 19:31
22 sept. 2016 à 19:31
J'ai regardé tes données..... et voulu les adapter à ton tableau....
Le problème .. c'est que ton tableau Excel ne peut pas correspondre.... ou alors tu ne nous as pas tout dit...
Si je prends l'exemple du président....
Dans ton tableau Excel tu mets :
Président: CHIABERTO Gilbert
Hors.. dans les données Excel on trouve :
Donc... comment sais tu que c'est Gilbert le président... et non Marie-Christine ??
De plus... vu les dates de "fin" .. il ne devrait même pas y avoir de président en fait.....
Et c'est pareil pour toutes tes autres lignes.....
Au passage.. dans ta BDD .. la date de fin MAX est le 2016-03-31 ... donc autant dire qu'il n'y a plus personne en poste .....
Lorsque je t'ai demandé un "dessin" .. je t'ai bien dit : En te basant sur les données que tu nous mis à disposition....
Donc soit ton dessin est faux... soit les données fournies ne nous permettent pas de réaliser ce que tu veux...
Voilou.
Le problème .. c'est que ton tableau Excel ne peut pas correspondre.... ou alors tu ne nous as pas tout dit...
Si je prends l'exemple du président....
Dans ton tableau Excel tu mets :
Président: CHIABERTO Gilbert
Hors.. dans les données Excel on trouve :
Donc... comment sais tu que c'est Gilbert le président... et non Marie-Christine ??
De plus... vu les dates de "fin" .. il ne devrait même pas y avoir de président en fait.....
Et c'est pareil pour toutes tes autres lignes.....
Au passage.. dans ta BDD .. la date de fin MAX est le 2016-03-31 ... donc autant dire qu'il n'y a plus personne en poste .....
Lorsque je t'ai demandé un "dessin" .. je t'ai bien dit : En te basant sur les données que tu nous mis à disposition....
Donc soit ton dessin est faux... soit les données fournies ne nous permettent pas de réaliser ce que tu veux...
Voilou.
papyclic
Messages postés
446
Date d'inscription
mercredi 5 novembre 2014
Statut
Membre
Dernière intervention
18 octobre 2016
3
22 sept. 2016 à 20:43
22 sept. 2016 à 20:43
Bonjour
Si mes données après vérification sont exact. Le dernier fichier excel "responsabilité" est exactement ce que je souhaiterai obtenir aujourd'hui en fait comme nous n'avons pas de président-adjoint le poste est vacant.
Car cette responsabilité ayant était occupé dans le passé il y a obligatoirement une date de fin.
Alors excuse moi peut-être je n'arrive pas expliquer réellement mon soucis mais je peux te garantire que toutes les données sont issues de ma BDD et elles sont toutes exact c'est promis.
En fait le président dans la table cdc_gerer l'idfonc est le 1 est l'idpers est le 2 avec une date de fin à 0 donc c'est le président en exercice.
En fait aujourd'hui ma requète me retourne bien les fonctions dont la date de fin est à 0 mais pas le(les) postes qui sont vacants.
Merci et bonne soirée
Si mes données après vérification sont exact. Le dernier fichier excel "responsabilité" est exactement ce que je souhaiterai obtenir aujourd'hui en fait comme nous n'avons pas de président-adjoint le poste est vacant.
Car cette responsabilité ayant était occupé dans le passé il y a obligatoirement une date de fin.
Alors excuse moi peut-être je n'arrive pas expliquer réellement mon soucis mais je peux te garantire que toutes les données sont issues de ma BDD et elles sont toutes exact c'est promis.
En fait le président dans la table cdc_gerer l'idfonc est le 1 est l'idpers est le 2 avec une date de fin à 0 donc c'est le président en exercice.
En fait aujourd'hui ma requète me retourne bien les fonctions dont la date de fin est à 0 mais pas le(les) postes qui sont vacants.
Merci et bonne soirée