-
Notifications
You must be signed in to change notification settings - Fork 0
/
requetes_sql
60 lines (40 loc) · 3.79 KB
/
requetes_sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#-----------------------------------------------------------
# 1. Afficher les soldats qui ont passé un parcours donné.
#-----------------------------------------------------------
SELECT DISTINCT `prenom`,`nom`,`grade` FROM `soldat`,`passer` WHERE soldat.matricule=passer.matricule_soldat AND idParcours=1;
#---------------------------------------------------------
# 2. Afficher les obstacles d’un parcours
#---------------------------------------------------------
SELECT DISTINCT nomObstacle FROM obstacle,passer WHERE obstacle.idObstacle=passer.idObstacle AND idParcours=1;
#-------------------------------------------------------------------------------------------------------
# 3. Afficher les soldats avec leurs moyennes pour un parcours (nom soldat, prénom, matricule, moyenne)
#-------------------------------------------------------------------------------------------------------
SELECT DISTINCT prenom,nom,soldat.matricule, AVG(noteFinale) AS moyenne FROM soldat,passer WHERE soldat.matricule=passer.matricule_soldat AND idParcours=1 GROUP BY matricule;
#-------------------------------------------------------------------------------------------------------
# 4. Afficher un soldat avec ses notes d’un parcours
#-------------------------------------------------------------------------------------------------------
SELECT prenom,nom,grade,noteInstructeur FROM soldat,passer WHERE soldat.matricule=passer.noteInstructeur AND idParcours=1;
#-------------------------------------------------------------------------------------------------------
# 5. Afficher les soldats qui ont réussi au moins 10 obstacles
#-------------------------------------------------------------------------------------------------------
SELECT DISTINCT prenom,nom,grade FROM soldat,passer WHERE soldat.matricule=passer.matricule_soldat AND idObstacle >=10;
#-------------------------------------------------------------------------------------------------------
# 6. Afficher les soldats qui ont réussi tous les obstacles
#-------------------------------------------------------------------------------------------------------
SELECT DISTINCT prenom,nom,grade FROM soldat,passer WHERE soldat.matricule=passer.idObstacle AND noteFinale >=10
#-------------------------------------------------------------------------------------------------------
# 7. Afficher les soldats qui n’ont réussi aucun obstacle
#-------------------------------------------------------------------------------------------------------
SELECT DISTINCT prenom,nom,grade FROM soldat,passer WHERE soldat.matricule=passer.idObstacle AND noteFinale=0;
#-------------------------------------------------------------------------------------------------------
# 8. Afficher les instructeurs ayant examiné des soldats pour un parcours donné
#-------------------------------------------------------------------------------------------------------
SELECT DISTINCT matricule_soldat,prenom,nom,grade FROM soldat,passer WHERE soldat.matricule=passer.matricule_soldat AND idParcours=1
#-------------------------------------------------------------------------------------------------------
# 9. Pour chaque instructeur afficher le nombre de soldats examinés dans un parcours
#-------------------------------------------------------------------------------------------------------
SELECT COUNT(soldat.matricule) AS nombreSoldat FROM soldat,passer WHERE soldat.matricule=passer.idParcours AND passer.matricule_soldat=1;
#-------------------------------------------------------------------------------------------------------
# 10. Pour chaque parcours afficher le nombre de soldats ayant participé
#-------------------------------------------------------------------------------------------------------
SELECT COUNT(passer.matricule) AS nbreParticipant FROM passer WHERE passer.idParcours >0;