SQL de trabajo:
necesidad:
El promedio de premios por docencia e investigación otorgados por docentes de un mismo departamento | Número medio de premios a la docencia y la investigación por parte de docentes con el mismo título profesional | El promedio de premios a la docencia y la investigación por parte de los docentes en toda la escuela. |
---|---|---|
Se requiere que el número promedio de premios no se pueda mostrar por clasificación
-- 教研获奖打败本部门教师人数 改为:部门排名 :5/145
select
RANK() OVER(partition by a.xymc ORDER BY JYHJCS desc) || '/' || b.num JSRS,
a.jzgh,
a.JYHJCS,
a.xymc
from
(
select
a.jzgh,
a.xymc,
sum(a.num) JYHJCS
from
(
-- huojiang名单
select
count(distinct a.CGMC) num,
b.jzgh,
b.xymc
from
DC.jsx b
join
MODEL.hjmd a
on a.ZYWCR=b.jzgxm
where b.GWLX='专任教师'
group by b.jzgh,b.xymc
union all
--成果奖
select
count(distinct a.CGMC) num,
b.jzgh,
b.xymc
from
DC.JSXXB b
join
MODEL.JXCGJ a
on a.HJZ=b.jzgxm
where b.GWLX='专任教师'
group by b.jzgh,b.xymc
) a
group by a.jzgh,a.xymc
) a
analizar
La observación muestra que el SQL / derecho original es el número total de personas en este departamento, y solo necesita acumular todo el número de ganadores en este departamento.
SQL modificado
select SUM(JYHJCS) nums,xymc from (
select
a.jzgh,
a.xymc,
sum(a.num) JYHJCS
from
(
-- 获奖名单
select
DECODE(count(distinct a.CGMC), null, 0,count(distinct a.CGMC)) num,
b.jzgh,
b.xymc
from
DC.JSXXB b
left join
MODEL.HJMD a
on a.ZYWCR=b.jzgxm
where b.GWLX='专任教师'
group by b.jzgh,b.xymc
expandir
¿Cómo modificar los profesores con el mismo título profesional?