Exercice

Momor -  
diablo13800 Messages postés 2890 Date d'inscription   Statut Membre Dernière intervention   -
Soit la base de données, décrite par les relations suivantes :

FOURNISSEURS (NF, NOMF, VILLEF)
CLIENTS (NC, NOMC, VILLEC)
PIECES (NP, NOMP, COULEUR, POIDS, VILLE)
PROJETS (NPR, NOMPR, VILLE)
LIVRAISONS (NF, NP, NPR, DATEL, QTEL)
ACHATS (NC, NP, DATEA, QTEA)
Résoudre les requêtes suivantes en SQL :

1. Donner le numéro du fournisseur, le nom et la couleur de chaque pièce livrée par ce fournisseur,
2. Quels sont les fournisseurs qui habitent à Tunis, ayant un numéro supérieur à 237,
3. Donner la liste des numéros des fournisseurs n’ayant pas fait de livraison depuis 2003,
4. Donner les noms des pièces dont le poids est supérieur à trois Kilos, de couleur Noire ou Jaune,
5. Donner les noms des fournisseurs qui livrent une quantité de la pièce numéro P5 égale à 45 unités,
6. Donner les numéros des fournisseurs qui fournissent au moins toutes les pièces fournies par le fournisseur “F8”,
7. Donner le triplet (NF, NC, NP), sachant que NF livre la pièce NP et NC achetant cette pièce NP, et que ce fournisseur et ce client habitent tous les deux la même ville,
8. Quels sont les fournisseurs qui livrent au moins une pièce dans la ville là où ils habitent,
9. Donner les numéros des fournisseurs qui fournissent au moins une pièce fournie par le fournisseur “F4”.

4 réponses

diablo13800 Messages postés 2890 Date d'inscription   Statut Membre Dernière intervention   1 860
 
0
Momor
 
je cherche une solution pour l'exercice de base de données.
0
diablo13800 Messages postés 2890 Date d'inscription   Statut Membre Dernière intervention   1 860
 
Personne ne vous fera votre exercice à votre place comme indiqué dans le lien que je vous ai envoyé.

Essayez de faire et seulement si vous bloqué ou pour avoir des confirmations vous pouvez poser vos questions.

Mais faire votre exercice c'est hors de question.
0
momor
 
Exercice n 2

1-
select nf, nomf
from fournisseur
where year(date_embauche) between 1993 and 1995
order by nom
2-
SELECT fournisseur
FROM FOURNISSEUR
WHERE VILLEF = ‘Tunis’, nf>237;

3-
SELECT *
FROM FOURNISSEURS
WHERE date = 2003, livraison IS NULL;
4-
SELECT *
FROM Piéces
WHERE Poids>3kg, couleur(noir,jaune)
5-
Select *
From Fournisseur
Where NP = P5
Where QTEL=45
6-
Select *
From Fournisseur
Where Fournisseur = F8

7-
Select *
From Fournisseur
Where (NF,NC,NP)
Order by (NF,NC,NP)
8-
Select *
From Fournisseur
Where LP = 1,Ville=VilleF
9-
Select *
From Fournisseur
Where Fournisseur = F4,NP=1;
0
diablo13800 Messages postés 2890 Date d'inscription   Statut Membre Dernière intervention   1 860
 
Bonjour,

Bon je vais trier question par question, ce sera plus simple pour vous pour comprendre les remarques je pense.


1. Donner le numéro du fournisseur, le nom et la couleur de chaque pièce livrée par ce fournisseur,

select nf, nomf
from fournisseur
where year(date_embauche) between 1993 and 1995
order by nom


Je pense que vous avez vu en cours les Jointures, et la c'en ai un bon exemple.
Vous devez faire une jointure sur la table Fournisseur, Livraison, et Pièces.
La dans votre réponse, je sais même pas ce que fait la date_embauche, ou alors il y a confusion dans la question.
https://sql.sh/cours/jointures

2. Quels sont les fournisseurs qui habitent à Tunis, ayant un numéro supérieur à 237,
SELECT fournisseur
FROM FOURNISSEUR
WHERE VILLEF = ‘Tunis’, nf>237;


Vous ne pouvez pas utiliser la virgule, il faut utiliser AND ou OR. ( Suivant si vous avez besoin des deux, ou seulement un des deux pour correspondre à ce que vous voulez.)
https://sql.sh/cours/where/and-or

3. Donner la liste des numéros des fournisseurs n’ayant pas fait de livraison depuis 2003,
SELECT *
FROM FOURNISSEURS
WHERE date = 2003, livraison IS NULL;


Pas besoin du étoile, vous ne cherchez que le NF. Et pour ma part je passerais par une requête imbriqué. " Select ... from Table where Table.ClePrimaire not in ( select .... from AutreTable where ....) "
https://sql.sh/cours/sous-requete

 
4. Donner les noms des pièces dont le poids est supérieur à trois Kilos, de couleur Noire ou Jaune,
SELECT *
FROM Piéces
WHERE Poids>3kg, couleur(noir,jaune)


Idée bonne, mais reprendre ce que je dis pour la question 3 et 2. Utilisez le IN ou le OR pour la couleur.
https://sql.sh/cours/where/in

Essayer déjà de voir ces 4 là. Et dites moi ce que vous avez trouvé. Et si vous arrivez à vous auto corriger avec mes remarques sur les autres ce serait que bénéfique pour vous, mais si vous n'y arrivez faites le savoir.


0