TP - Agences de location de véhicules☘
Il est mis à disposition selon les termes de la Licence Creative Commons Attribution 4.0 International et adapté du TP originel de Jacques Le Coupanec.
Synopsis☘
Vous venez de finir brillamment vos études en Bretagne, et, confiant dans vos capacités, vous décidez de monter votre petite entreprise. Vous avez choisi de vous lancer dans la location de véhicules et en à peine 6 mois vous êtes déjà à la tête d'un réseau d'agences.
Malheureusement, il apparaît que les rentrées financières ne décollent pas vraiment et il est temps d'analyser en détail votre historique des locations, le déplacement de vos véhicules et la synergie entre vos différentes agences.
Schéma relationnel☘
Votre base de données est constituée des trois tables suivantes :
-
Table Vehicules :
- l'attribut
nom
regroupe la marque et le modèle du véhicule ; - l'attribut
age
est l'ancienneté, en mois, du véhicule au sein de la flotte.
- l'attribut
-
Table Locations :
- l'attribut
vehicule
fait référence à l'attributimmatriculation
d'un véhicule ; - l'attribut
depart
fait référence à l'identifiantid
d'une agence ; - l'attribut
retour
fait référence à l'identifiantid
d'une agence ; - l'attribut
kilometrage
est le kilométrage parcouru par le véhicule durant cette location.
Cet attribut estNULL
si la location est en cours ; - l'attribut
date
est la date de la location ; - l'attribut
duree
indique le nombre de jours de location.
- l'attribut
-
Table Agences :
- l'attribut
code
correspond au code postal.
- l'attribut
Partie A - Étude de la relation Agences☘
Dans cette partie, vous allez utiliser la commande SELECT
associée aux
commandes :
WHERE ...
;WHERE ... LIKE ...
;WHERE ... IN ...
.
Vous utiliserez également les fonctions d'agrégation COUNT()
et SUBSTR()
.
Pour commencer, suivez ce lien.
Fonction SUBSTR
Internet est votre ami : https://www.sqlitetutorial.net/sqlite-functions/sqlite-substr/.
Partie B - Étude de la relation Véhicules☘
Dans cette partie, vous allez utiliser la commande SELECT
associée au mot-clef
AS
et à la commande ORDER BY
.
Vous utiliserez également les fonctions d'agrégation MIN()
, MAX()
et AVG()
.
Pour continuer, suivez ce lien.
Partie C - Étude de la relation Locations☘
Dans cette partie, vous définirez des jointures entre les trois relations à l'aide
de la commande JOIN ... AS .... ON ...
.
Pour effectuer cette nouvelle étude, suivez ce lien.
Partie D - Gestion du réseau d'agences☘
Dans cette partie, vous utiliserez toutes les commandes SQL découvertes dans ce chapitre, ainsi que celles étudiées dans le chapitre précédent.
Pour réaliser la dernière partie de ce TP, suivez ce lien.