J'ai une requête pour obtenir des pièces défectueuses et en plus j'ai besoin de calculer la valeur en pourcentage à toutes les pièces produites sur une période de temps.Pourcentage de calcul SQL avec sous-requête indépendante? syndicat?
Je suis un SQL Noob, et je ne travaille pas solution. J'ai ces deux requêtes de travail et je veux les combiner pour calculer le pourcentage sur le nombre de pièces produites.
J'essaie avec un sous-select facile dans la requête. Mais alors il ne calcule que le nombre de pièces des décalages qui contiennent les parties défectueuses. Je ne comprends pas la somme des pièces sur toute la durée. Donc, je veux combiner ces deux querys. Après cela, j'essaie de joindre et d'union mais je reçois seulement des messages d'erreur.
Je raccourcir et remanier les requêtes affichées pour les rendre plus compréhensibles.
(Oracle 11gR2)
requête pour obtenir les pièces
SELECT Production.LineName, Names.DescDefect, Sum(Errors.Rework)
FROM Production, Batchdata, Errors, Names, ShiftData, Shifts
WHERE ...=... and ShiftData.Date=...
GROUP Production.Line, Names.DescDefect
HAVING (Production.LineNumber Like '700_')
ORDER BY ...
Résultat linke ceci:
LineName DescDefect Sum(Errors.Rework)
Line1 Defect1 10
Line1 Defect3 2
Line3 Defect12 5
Line3 Defect53 5
requête pour le nombre de pièces:
SELECT Production.LineName, Sum(Batchdata.Produced)
FROM Production, Batchdata
WHERE ...=... AND ((Production.LineNumber Like '700_') AND (ShiftData.Date=...))
GROUP BY Production.LineName
Résultat :
LineName Sum(Batchdata.Produced)
Line1 500
Line3 700
Ce que je veux:
LineName DescDefect Sum(Errors.Rework) percent
Line1 Defect1 10 2
Line1 Defect3 2 0,4
Line3 Defect12 5 0,7
Line3 Defect53 5 0,7