Lecture et compréhension des requêtes SQL.
Cours : Lecture et compréhension des requêtes SQL.. Recherche parmi 300 000+ dissertationsPar djamila77 • 8 Novembre 2016 • Cours • 628 Mots (3 Pages) • 691 Vues
La base de données de la société InfoDev : compréhension, développement et mise au point de requêtes d'interrogation
Partie 1 : Lecture et compréhension des requêtes SQL
Pour chacune des requêtes suivantes :
- Décrire le besoin d'information auquel elle répond
- Contrôler que le résultat obtenu est conforme au besoin exprimé.
Attention : les jointures ont été écrites en SQL1...
Requête N°1 :
SELECT nom
FROM projet
WHERE (dateFin-dateDebut)> 10;
Requête N°2 :
SELECT nom
FROM projet
WHERE dateReponse BETWEEN #02/01/2006# AND #02/28/2006#;
Requête N°3 :
SELECT MAX(dateFin-dateDebut) as dureeMaximumEnCours
FROM projet
WHERE etat='En Cours';
Requête N°4 :
SELECT nom,prenom,AVG(dateSortie-dateEntree)as tempsMoyenActivite
FROM intervenant, participer
WHERE intervenant.num=participer.numIntervenant
GROUP BY nom,prenom;
Requête N°5 :
SELECT client.num, client.nom, nomContact
FROM client, projet
WHERE client.num = projet.numClient
AND projet.nom = 'ResHermioneSTG1';
Requête N°6 :
SELECT projet.nom, description, client.nom
FROM client, projet
WHERE client.num = projet.numClient
AND etat = 'Candidat';
Requête N°7 :
SELECT DISTINCT intervenant.num, intervenant.nom, intervenant.prenom
FROM intervenant, participer, Activite
WHERE intervenant.num = participer.numIntervenant
AND participer.numActivite = activite.num
AND codeProjet = 'P050309';
Requête N°8 :
SELECT COUNT(*) AS NB
FROM projet, pole
WHERE projet.codePole = pole.code
AND pole.libelle = 'Réseau'
AND projet.etat = 'Non Réalisé';
Partie 2 : Lecture et modification de requêtes SQL incorrectes
Les cas suivants présentent :
- L'expression d'un besoin d'information
- La requête SQL fournie en réponse à ce besoin
- Le résultat obtenu.
Dans chacun des cas :
- Expliquer en quoi le résultat obtenu n'est pas conforme à la demande
- Proposer une modification de la requête
- Vérifier cette requête sous le SGBD.
Cas N° 1
On souhaite obtenir la liste des noms de projets concernant le pôle réseau.
La requête suivante a été implantée :
SELECT projet.nom
FROM projet, pole
WHERE pole.libelle ='Réseau';
Le résultat obtenu se présente ainsi :
Résultat |
nom |
ResMarquez |
ResAZ-FromagerieServices |
ResSteEanneRécupération |
DévHyper-Pubphone |
ResDelorsier |
DévRaymond |
ResValentin |
DévPelleret |
DévGacollain |
ResJouet&Cie |
ResKorriganServices |
DévBarsau |
ResHermioneSTG1 |
DévBevrinetUrgences |
DévBardon24 |
ResTétardolle |
DévMateaud |
DévLouisBlanc |
ResVetAffaire |
ResJardinVert |
DévJardHiou |
ResBertahard |
DévJouetsLagnon |
ResParfumerieLanvin |
Cas N° 2
On souhaite obtenir le nombre de projets par pôle.
...