Bonjour à tous, j'ai un petit exo de BD a faire, et j'aimerai savoir si les requete que j'ai trouvé sont completment fausse, ou pas trop fausse
( je précise que je suis trés mauvais la dedans , et que étant chez moi, je n'ai pas pu tester aucune de ces requête , donc c'est trés probable qu'il y ai en plus des erreur syntaxique )
Voici en gros mes table, avec leur champs ( un peu simplifié )
AGENCE ( nom,adresse, responsable )
EMPLOYE( Id, nom,adresse,poste, agence)
VEHICULE( No_Imatriculation, Kilometrage,Marque, Type,Disponibilité)
CLIENT( Id,nom,adresse,type)
LOCATION(tarif,Client,durée,date_début,Agence_location, agence_retour, No_imatriculation)
Bon ca manque surement de précision :/
Type_vehicule = voiture ou utilitaire
Poste = responsable ou "autre"
Type_client = particulier ou entreprise
Disponibilité = Non si la voiture est en location , sinon on y met le nom de l'agence ou elle se trouve .
Voici 3 requetes, sur lesquels j'aimerai votre avis :
1-Les agences dans lesquel au moins 1 utilitaire de cahque marque est dispo a la location
2- les nom des reponsables des agence dans lesquelle il est impossible de louver une voiture
3- pour cahque vehicule de + de 50k km, donner la sommes des tarif de toute les lcoation faite par les entreprise pour ce vehicule en septembre 2k5.
Voici ce que je mettrai ( c'est surement trés laid ^^ )
1- ( la j'avoue que je séche, je suis arrivé ca a ca, mais ca ne répond aps a la question ... )
-> ca donne toute les agence dont un vehicule est dispo et de type utilitaire, je n'arrive pas a traduire le " de cahque marque " ... je pense qu'on peut trouver le nombre de marque / la liste de celle ci par une sous-requete, mais je ne vois pas comment ca me servirai de toute facons ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT A.* from Agence A, Vehicule V WHERE A.Adresse = V.Disponibilité && V.Type = "utilitaire"
2 -
3-
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT E.Nom, FROM EMPLOYE E, AGENCE A WHERE A.No_responsable = E.No_employé && NOT EXIST ( SELECT * FROM LOCATION L , VEHICULE V WHERE L.No_Imatriculation = V.No_imatriculation && .Type = "voiture" )
Voila je serais content d'apprendre de mes erreurs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SELECT No_Immatriculation, SUM ( tarif ) FROM LOCATION L, VEHICULE V, CLIENT C WHERE L.DATE = "sept 2K5" && C.No_Client = L.No_Client && C.Type = "entreprise" && V.Kilometrage >= 50000 Group by No_Imatriculation
EDIT : un peu editer aprés avoir retravailler la chose
Partager