Requete SQL complexe.

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Requete SQL complexe.

par remy42 » 24 juin 2009, 11:03

Merci beaucoup ca fonctionne a merveille

Merci a tous pour votre aide qui m'aura été très précieuse tout au long de ce petit pojet

par charabia » 24 juin 2009, 09:26

Avec un petit HAVING.

Code : Tout sélectionner

SELECT eleves.prenomeleve, eleves.nomeleve, absences.booljustif, COUNT(absences.numabsence) AS Nb_abs_Injustifiee FROM eleves LEFT JOIN absences ON eleves.numeleve = absences.numeleve WHERE absences.booljustif='non' GROUP BY eleves.nomeleve HAVING Nb_abs_Injustifiee >=3
A tester

par remy42 » 23 juin 2009, 23:35

AND COUNT(eleves.numeleve)>=3

Ca ne fonctionne pas

par remy42 » 23 juin 2009, 22:30

Merci beaucoup charabia

J'ai dessiner sur un papier ton exemple et le mien j'ai fait la liaison pour comprendre et ca fonctionne a peu pres

Voici ma requete. Mais MALHEUREUSEMENT :( ca m'affiche un tableau avec chaque eleve et son nombre d'absence en face )

Et moi ce que je souhaite c'est que sa affiche que si le nombre d'absences INJUSTIFIEE est SUPERIEUR ou EGALE a 3

Le injustifiée je le gère par booljustif='non' ca fonctionne
Mais comment dire AND count>=3 ???

Merci d'avance on arrive au bout :)

SELECT eleves.prenomeleve, eleves.nomeleve, absences.booljustif, COUNT(absences.numabsence) AS Nb_abs_Injustifiee
FROM eleves LEFT JOIN absences ON eleves.numeleve = absences.numeleve
WHERE absences.booljustif='non'
AND xxxxxxxxxxxxxxxxxxx
GROUP BY eleves.nomeleve

par charabia » 23 juin 2009, 22:23

par dunbar » 23 juin 2009, 21:54

Salut

Simplement ceci peut-être
WHERE nomeleve = 'Nom_de_l\'eleve'
AND prenomeleve = 'Prenom_de_l\'eleve'
Tu pourrais ne prendre que le nom mais alors il y aurais un risque important au cas ou tu deux eleve qui porte le même nom, par contre en rajoutant le prenom là il y a déjà moins de risque

Requete SQL complexe.

par remy42 » 23 juin 2009, 21:46

Bonjour j'espere etre au bon endroit pour ma demande.
Je suis en train de finaliser mon developpement d'intranet php pour gerer les absences dans une ecole. Je n'arrive pas a construire une requete pour remplir mon tableau dans ma page.

Il me reste un tableau a construire, le voici :

Nom-------Prénom---------Nombre absences injustifiées

Mes tables sont les suivantes ( pour faire court ) :

Eleves ( numeleve, nomeleve, prenomeleve )
Absences ( numabs, ....., booljustif , #numeleve )

Pour info: booljustif c'est oui ou non pour savoir si l'absence est justifiée ou pas

Je sais qu'il faut faire un truc du style :

Select count(*) as nombreabsence , nomeleve , prenomeleve from absences , eleves where ....

Je ne sais pas quoi mettre dans le WHERE

SI vous pouviez m'aidez ce serait génial

Merci d'avance j'espere avoir été clair dans mes explications