pblm de requete SQL besoin aide !!!

pblm de requete SQL besoin aide !!! - SQL/NoSQL - Programmation

Marsh Posté le 01-05-2006 à 13:24:22    

1.
 
SELECT eleve_nom, eleve_prenom  
FROM eleve  
Where (eleve_ville = «Pessac »  
OR eleve_ville = « katiemorgan»)
Order by eleve_ville,nom  
 
c'est pas plutot ça pour la première?

Reply

Marsh Posté le 01-05-2006 à 13:24:22   

Reply

Marsh Posté le 01-05-2006 à 13:25:47    

2.  
 
SELECT eleve_nom,eleve_prenom  
FROM eleve  
WHERE eleve_ville <> 'Bordeaux'  
ORDER BY eleve_ville, nom  
 
le not like n'est pas performant. Attention au double quote aussi, la norme prédit l'usage de simple quote pour les chaines de caractères

Reply

Marsh Posté le 01-05-2006 à 13:29:55    

3. OK
4/5. attention au like, c'est pas génial, mais alors un "=" au lieu de ton like. Like est utilisé quand tu dois rechercher qqch à l'intérieur d'une chaîne.
6. OK
7. ça me semble bon à première vue
8. je crois que tu n'as pas compris, tu es sure que c'est count et pas sum?
 
select el.eleve, mat.libelle, cl.classe sum(n.note)  
from eleve el, matiere mat, noter n  
where el.nom_eleve = n.num eleve  
and mat.code_matiere = n.code mat  
group by el.eleve, mat.libelle;
 
le sum, et manquerait il pas un group by?
 
9.  
 
select el.eleve, cl.classe sum(n.note)  
from eleve el, matiere mat, noter n  
where el.nom_eleve = n.num eleve  
and mat.code_matiere = n.code mat  
group by el.eleve;
 
10. ça me semble bon.
 
11. OK
 
12. pour la douze, aucune idée. J'ai pas la bd donc difficile de se représenter les données...  
 
 
 
 
 


Message édité par moi23372 le 01-05-2006 à 13:34:43
Reply

Marsh Posté le 01-05-2006 à 18:30:10    


 
Je comprends pas ce que "katiemorgan" vient faire pour "Merignac". En revanche, quand tu demandes dans le langage courant les éléments appartenants à l'ensemble X et les éléments appartenants à l'ensemble Y, il faut demander en SQL les éléments appartenants à X OU Y (d'ailleurs, la requête "1" formulée correctement devrait être "Nom et prenom des eleves habitant ville pessac ou merignac triés par ville puis par nom" )
 
 
=> Order by eleve_ville, eleve_nom


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 01-05-2006 à 23:11:26    


 
Ca fait longtemps que j'ai pas écrit du SQL mais ça devrait être un truc comme ça
select prenom, temps, cumul, sum(temps)
from joueur
group by prenom
order by prenom;


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 02-05-2006 à 18:08:46    


 
PROF ( code prof, civilité_p, nom_p,prenom_p, taux horaire)  
 
ENSEIGNER(code_prof#,code classe#,code mat#,Volume_horaire)  
 
Hum... j'essaierais bien le truc suivant
 
select enseigner.code_prof, sum(enseigner.volume_horaire) * prof.taux_horaire
from enseigner, prof
where
  enseigner.code_classe='x' and
  enseigner.code_prof=prof.code_prof
group by enseigner.code_prof
 
Bon, c'est pas exactement ça. Ca devrait donner, pour la classe, le prix de chaque matière. Evidemment pour avoir le coût salarial de la classe, faudrait additionner l'ensemble de ces prix mais je vois pas trop comment le faire en 1 requête...    
 
 


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 02-05-2006 à 23:25:27    

12.
 
CLASSE(code classe, libelle classe)  
PROF ( code prof, civilité_p, nom_p,prenom_p, taux horaire)  
ENSEIGNER(code_prof#,code classe#,code mat#,Volume_horaire)  
 
SELECT c.code_classe, sum(p.taux_horaire * e.volume_horaire)
FROM classe c, prof p, enseigner e
WHERE c.code_classe = e.code_classe
AND p.code_prof = e.code_prof
GROUP BY c.code_classe;

Reply

Marsh Posté le 03-05-2006 à 15:00:44    

Beegee a écrit :

12.
 
CLASSE(code classe, libelle classe)  
PROF ( code prof, civilité_p, nom_p,prenom_p, taux horaire)  
ENSEIGNER(code_prof#,code classe#,code mat#,Volume_horaire)  
 
SELECT c.code_classe, sum(p.taux_horaire * e.volume_horaire)
FROM classe c, prof p, enseigner e
WHERE c.code_classe = e.code_classe
AND p.code_prof = e.code_prof
GROUP BY c.code_classe;


 
Simple comme l'oeuf de Colomb  :)  - Il fallait juste y penser  :jap:  
 


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed