Requête cumul access
priss
-
oo1 -
oo1 -
Bonjour,
j'ai créée une base de donnée pour calculé la rentabilité de chaque chantier.
je vous mets le MLD correspondant à la demande que je vous fait :
Salarié (CodeSalarié, NomSalarié, PrénomSalarié)
Affaire (NumAffaire, NomAffaire, VilleAffaire, DescrpitionAffaire)
NombreHeure (NumNbHeure, NbHeure)
Travailler (N°, CodeSalarié, NumAffaire, NumNbHeure, NumSemaine)
le champ N° de la table Travailler, est la clé primaire pour éviter les doublons.
j'ai fait comme requêtes :
ma requête ne me semble pas correct étant donné des résultats qu'elle m'affichent.
ce que j'aimerai qu'elle me donne comme résultat c'est par exemple pour l'affaire N°01 un cumul des heures passées sur ce chantier des salariés N°01, N°02 et N°03 pour la semaine N°15.
merci pour votre aide =)
j'ai créée une base de donnée pour calculé la rentabilité de chaque chantier.
je vous mets le MLD correspondant à la demande que je vous fait :
Salarié (CodeSalarié, NomSalarié, PrénomSalarié)
Affaire (NumAffaire, NomAffaire, VilleAffaire, DescrpitionAffaire)
NombreHeure (NumNbHeure, NbHeure)
Travailler (N°, CodeSalarié, NumAffaire, NumNbHeure, NumSemaine)
le champ N° de la table Travailler, est la clé primaire pour éviter les doublons.
j'ai fait comme requêtes :
SELECT Affaire.NumAffaire, Affaire.NomAffaire, Travailler.CodeSalarié, Travailler.NumSemaine, Travailler.NumNbHeure, NbHeures.NbHeure AS [Cumul des heures] FROM Salarié INNER JOIN (NbHeures INNER JOIN (Affaire INNER JOIN Travailler ON Affaire.NumAffaire = Travailler.NumAffaire) ON NbHeures.NumNbHeure = Travailler.NumNbHeure) ON Salarié.CodeSalarié = Travailler.CodeSalarié;
ma requête ne me semble pas correct étant donné des résultats qu'elle m'affichent.
ce que j'aimerai qu'elle me donne comme résultat c'est par exemple pour l'affaire N°01 un cumul des heures passées sur ce chantier des salariés N°01, N°02 et N°03 pour la semaine N°15.
merci pour votre aide =)
2 réponses
-
oui,
pour la table travailler comme je l'ai dit j'ai du ajouté le champ N° pour éviter les doublons, car normalement NumAffaire, CodeSalarié et NumNbHeure doivent être les clés étrangères.
sinon par exemple ca fait des doublons comme cet exemple : si le salarié n°1 travaille sur le chantier n°1 et le numNbHeure est le N°1 pour la semaine 15, pour la semaine 17 cela peut être la même chose donc cela fait des doublons -
Bonjour,
Es-tu sur de la justesse de ton MLD