Requête SQL etudiante

Fermé
Constancce Messages postés 5 Date d'inscription dimanche 7 février 2021 Statut Membre Dernière intervention 8 février 2021 - 7 févr. 2021 à 19:40
yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 - 8 févr. 2021 à 15:23
Bonjour à tous ! Je suis étudiante et je suis en train d'apprendre le language SQL ! Voici ce que j'ai fait : Dites moi si il y a des fautes :)

PRODUIT (numProduit, libelle, prix)
VILLE (NomVille, superficie, population)
EMPLOYE (NumSS, nom, prénom, age)
ENTREPOT (numEntrepot, NomVille, NumSS, adresse, capacite, classe)
STOCKAGE (numEntrepot, NomVille, numProduit, quantite)


1. Donner la liste des produits (libelle, prix) stockés dans des entrepôts de la ville de Paris.

SELECT Libellé, prix
FROM Stockage S, Produit P
WHERE S.numProduit = P.numProduit
AND NomVille = ‘Paris’

2. Donner la liste des employés (nom, prénom) de plus de 30 ans n’assurant la responsabilité d’aucun entrepôt.

SELECT EM.nom, EM.prénom
FROM Employé EM
WHERE age = > 30
WHERE NumSS IN
(SELECT EM.NumSS
FROM Employé EM
MINUS
SELECT EN.NumSS
WHERE Entrepot EN)

3. Donner la liste des employés (tous les attributs) responsables d’au moins un entrepôt d’une grande ville et stockant le produit de libellé « pesticides » pour une quantité inférieure à 50. Une grande ville est caractérisée par une population de plus de 100 000 habitants.

SELECT Num SS, nom, prénom, age
FROM Employé E, Produit P, Stockage S, Ville V
WHERE P.NumProduit = S.NumProduit
AND V.NomVille = S.NomVille
AND libelle = ‘pesticides »
AND quantité = < 50
AND population = > 100 000

4. Pour chaque ville de plus de 50 000 habitants, donner le nombre de grands entrepôts de classe A qu’elle comporte. Un grand entrepôt est d’une capacité supérieure à 2000.


SELECT NumEntrepot, COUNT (*)
FROM VILLE V, ENTREPOT E
WHERE V.nomVille = E.nomVille
AND Population = > 50 000
AND classe = A
AND capacité = > 2 000
GROUP BY NumEntrepot


5. Pour chaque produit (numProduit, libelle), donner le nombre d’entrepôts dans lesquels il est stocké. On ne s’intéresse qu’aux produits stockés dans plus de 4 entrepôts.

SELECT NumProduit, libelle, COUNT(*)
FROM Produit P, Stockage S
WHERE P.numProduit, S.numProduit
HAVING COUNT (DISTINCT numEntrepot) >= 4
GROUP BY NumProduit, libelle


6. Donner le nombre total de produits stockés dans les entrepôts de la ville de Paris.

SELECT NumProduit, COUNT (*)
FROM Stockage
WHERE NomVille = ‘Paris’

2 réponses

yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 Ambassadeur 1 554
8 févr. 2021 à 13:26
bonjour,
as-tu testé tes requêtes?
0
yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 1 554
8 févr. 2021 à 13:28
ta requête 4 ne va probablement pas donné le résultat attendu. as-tu lu ce que tu as écrit?
donne peut-être un exemple du résultat attendu.
0
Constancce Messages postés 5 Date d'inscription dimanche 7 février 2021 Statut Membre Dernière intervention 8 février 2021 > yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024
Modifié le 8 févr. 2021 à 13:34
Il faut que j'enlève la dernière ligne, elle ne sert à rien ?
J'ai aussi modifier la dernière :

SELECT SUM(numProduit)
FROM STOCKAGE S
WHERE NomVille = ‘Paris’
0
Constancce Messages postés 5 Date d'inscription dimanche 7 février 2021 Statut Membre Dernière intervention 8 février 2021
8 févr. 2021 à 13:27
Bonjour,

Non je ne peux pas car je n'ai pas de serveur MYSQL. Celui donner par mon école ne m'autorise pas à créer une base de donnée pour que je puisses les vérifier...
0
yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 1 554
8 févr. 2021 à 13:37
donne peut-être un exemple du résultat attendu.

tu n'as pas un ordi où tu peux installer mysql?
as-tu essayé de travailler avec un site qui permet de faire du sql en ligne?
0
Constancce Messages postés 5 Date d'inscription dimanche 7 février 2021 Statut Membre Dernière intervention 8 février 2021 > yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024
8 févr. 2021 à 13:42
Ce serait un chiffre le resultat attendu mais lequel je sais pas... je n'ai que le nom des tables et leurs attributs...

J'ai essayer mais impossible, je comprends pas comment on fait ..
J'ai installé une virtual box car je suis sur mac et j'ai installer POWERAMC pour pouvoir générer une base de donnée physique avec mes tables

Je ne sais pas comment on créer un utilisateur et mot de passe PHPmyadmin... et impossible de trouver la solution sur internet. Mon école m'a donner des code PHPmyAdmin mais je ne peut pas créer de nouvelle base de donnée, à mon avis ils ont retiré cette possibilité pour pas que je modifie d'autres bases de données...

En bref, j'ai pas réussi à télécharger MYSQL par moi même et avoir un compte, et mon serveur PHPMyAdmin ne me permet pas de créer une base de donnée pour pouvoir vérifier mes requetes

(Désolé si c'est difficile à comprendre, j'ai encore beaucoup de mal avec le language SQL)
0
yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 1 554 > Constancce Messages postés 5 Date d'inscription dimanche 7 février 2021 Statut Membre Dernière intervention 8 février 2021
8 févr. 2021 à 13:50
es-tu certaine que le résultat pour (4) soit un chiffre?
si oui, pourquoi mets-tu deux éléments dans le SELECT?

si tu écris "impossible" parce que tu n'as pas trouvé la solution, je me demande comment tu vas progresser.

à tout hasard: https://openclassrooms.com/fr/courses/1959476-administrez-vos-bases-de-donnees-avec-mysql/1959969-installez-mysql

il existe aussi des sites qui permettent de faire du SQL en ligne.
0
Constancce Messages postés 5 Date d'inscription dimanche 7 février 2021 Statut Membre Dernière intervention 8 février 2021 > yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024
8 févr. 2021 à 14:29
oui, en effet impossible signifie que je ne trouve pas la solution mais ca ne signifie pas que je la cherche pas ! Ca fait 2 jours que j'essaie avec differents sites dont celui que tu m'a donné mais à un moment donné je bloque et je ne comprends pas pourquoi. Peut-être que ca signifie pour toi que je suis bête mais excuse moi de ne pas avoir tes compétences. C'est pourquoi au bout de 2 jours je me suis permise de demander de l'aide sur un forum. Mon problème est que lorsque je veux ouvrir l'application que ce soit grâce au terminal ou grâce au téléchargement du WorkBench... Cela me met un message d'erreur. Et oui j'ai réessayer de désinstaller et réinstaller et ce plusieurs fois en suivant parfaitement le processus que me donnes plusieurs sites.

Alors si tu me réponds pour réellement m'aider, je veux bien que tu me donnes un nom de sites, simple à utiliser pour que j'essaye de vérifier mes requêtes mais si tu me reponds simplement pour me dire que je ne progresserais pas alors je vais continuer à essayer de me débrouiller...
0
yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 1 554 > Constancce Messages postés 5 Date d'inscription dimanche 7 février 2021 Statut Membre Dernière intervention 8 février 2021
Modifié le 8 févr. 2021 à 15:37
es-tu certaine que le résultat pour (4) soit un chiffre?
si oui, pourquoi mets-tu deux éléments dans le SELECT?

il existe aussi des sites qui permettent de faire du SQL en ligne, tu trouveras facilement en faisant une recherche.
exemple:
https://extendsclass.com/mysql-online.html

prends aussi le temps de partager ici les requêtes de création de tes tables, ainsi que les requêtes pour y insérer des données.
0