Consulta de SQL para realizar la comprobación de carga para un empleado

Tengo una mesa de diseño como esta ...

1 Proyecto -> Múltiples productos.1 Producto -> Entorno múltiple.1 empleado -> Múltiples actividades.

El estado puede ser = "nuevo", "en progreso", "en espera", "cerrado"

<code>    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). 
</code>

Consulta de verificación de carga

Primero, averigüe el número total de actividades asignadas a cada empleado en un proyecto en particular.

(UNA). luego encuentre el número de actividades para ese empleado en ese proyecto donde status = new o inprogress. (SEGUNDO). Divide A / B. Calcule este A / B en valor porcentual.

Así que mi salida final de la tabla de consulta consistirá en

Nombre del empleadonombre del proyectoacto asignado total (valor de conteo)Ley que tiene estado nuevo o en proceso (Conde)Carga (el valor porcentual).

¿Alguien puede ayudarme con la consulta y explicar cómo puedo lograr este resultado? Gracias.

Hasta ahora he intentado esto ... obteniendo los resultados de A y B, pero ahora necesito combinar estos dos ...

<code>(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 ;
</code>

Respuestas a la pregunta(1)

Su respuesta a la pregunta