Ich habe eine Tabelle Design wie dieses ...SQL-Abfrage Lastprüfung für einen Mitarbeiter
- 1 Projekt durchzuführen.
- 1 Produkt -> Mehrere Umgebungen.
- 1 Mitarbeiter -> Mehrere Aktivitäten.
Status = sein kann "neu", "inprogress", "on hold", "geschlossen"
Activity table- ActID(PK), assignedtoID(FK), Env_ID(FK), Product_ID(FK), project_ID(FK), Status.
Product_table - Product_ID(PK), Product_name
Project_Table- Project_ID(PK), Project_Name.
Environment_Table- Env_ID(PK), Env_Name.
Employee_Table- Employee_ID(PK), Name.
Employee_Product_projectMapping_Table -Emp_ID(FK), Project_ID(FK), Product_ID(FK).
Product_EnvMapping_Table - Product_ID(FK), Env_ID(FK).
Lastkontrollabfrage
zuerst die Gesamtzahl der Aktivitäten herausfinden jedem Mitarbeiter in einem bestimmten Projekt zugewiesen.
(A). Suchen Sie dann die Anzahl der Aktivitäten für diesen Mitarbeiter in diesem Projekt, wobei Status = Neu oder Inprogress. (B). Teile A/B. Berechnen Sie diesen A/B in Prozent.
So wird meine letzte Abfrage Tabellenausgabe besteht aus
- Namen des Mitarbeiters
- Name des Projektes
- Gesamt zugewiesen act (Zählwert)
- Act mit Status neu oder in Verfahren (Count)
- Load (der Prozentwert.)
Kann mir jemand bei der Anfrage helfen und erklären, wie ich dieses Ergebnis erreichen kann? Vielen Dank.
Bisher habe ich so viel versucht, ... die Ergebnisse von A und B erhalten, aber jetzt brauche ich diese beiden zu kombinieren ...
(A).
SELECT activity_table.assignid, activity_table.projid, Count(activity_table.actid) AS CountOfactid
FROM activity_table
GROUP BY activity_table.assignid, activity_table.projid;
(B).
SELECT activity_table.assignid, activity_table.projid, Count(activity_table.actid) AS CountOfactid
FROM activity_table where status in ('new','inprogress')
GROUP BY activity_table.assignid, activity_table.projid ;
@AmitBhargava Habe es oben bearbeitet ... – user1312006
Graf von A sollte größer sein als Graf von B. Also, willst du A/B oder B/A? – sarwar026
Ja, ich bin Sarwar026 .. ich will A/B –