Programmation pl/sql
amal252
Messages postés
12
Statut
Membre
-
jordane45 Messages postés 30427 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 30427 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Les Tables de la base de donnée :
F(NF, NOMF, VILLE)
P(NP,NOMP,POIDS,COULEURS,VILLE)
J(NJ,NOMJ,VILLE)
FPJ(#NF,#NJ,#NP,QTE,DATELIVER)
Je veux affiché le NOMF et NP(nombre de pièce) en condition COULEUR = 'Rouge' et le nombre doit être > 20.
Mercii
Les Tables de la base de donnée :
F(NF, NOMF, VILLE)
P(NP,NOMP,POIDS,COULEURS,VILLE)
J(NJ,NOMJ,VILLE)
FPJ(#NF,#NJ,#NP,QTE,DATELIVER)
Je veux affiché le NOMF et NP(nombre de pièce) en condition COULEUR = 'Rouge' et le nombre doit être > 20.
Mercii
2 réponses
-
Salut,
Tu devrais mettre tous les liens (cardinalités) entre les champs des tables. Et tu auras alors quasiment ta requête. Là pour nous il nous manque des informations sur l'organisation des données.
cdlt
-
Bonjour,
Ce que tu cherches ne serait-il pas simplement une jointure entre ta table FPJ et la table P ?
Un truc du genre :SELECT T1.NOMF T2.NB T2.Nombre FROM FPJ as T1 LEFT JOIN (SELECT P.NP , SUM(P.NP) as Nombre FROM P WHERE P.COULEUR = 'Rouge' GROUP BY P.NP) T2 ON T2.NP = T1.NF WHERE T2.Nombre >20
-
Salut,
Moi je ne sais pas faire quand je ne sais pas concrètement à quoi correspondent les données. F, P, J ???
Et il serait étonnant que NP, clé, soit un nombre de pièce, plutôt un numéro. A quoi correspond la Ville dans une telle table ? Et le test sur 20 je le ferais plus sur QTE- Hello JeePee
Et le test sur 20 je le ferais plus sur QTE
Ce qui simplifierait beaucoup la requête...
Un truc du genre :SELECT T1.NOMF ,T1.QTE FROM FPJ as T1 LEFT JOIN NP as T2 ON T1.NP = T2.NP WHERE T2.COULEUR = 'Rouge' AND T.QTE > 20
Mais bon, comme tu le dis, les intitulé choisi pour ses tables ne sont pas très clairs... et un DUMP des données ou une meilleur explication des champs et des relations pourrait fortement nous aider à comprendre son réel besoin.
Bonne journée.
-