我正在研究评估系统,我需要检索正在评估的人给出的每个答案的值的总和。
这是我现在的查询:
SELECT e.evaluado.nombre, e.evaluado.apellido, e.evaluador.nombre, e.evaluador.apellido,
(pd.puntaje*rc.escala.valor/SIZE(c.preguntaCerradaCollection)), e.evaluado.centroCosto.descripcion
FROM Criterio c, PreguntaCerrada p, Redacciones r,
Evaluacion e, RespuestaPreguntaCerrada rc, Ponderacion pd, Escalas es
WHERE c.preguntaCerradaCollection = p
AND r.preguntaCerrada = p
AND r.instrumentos = e.idInstrumento
AND e.respuestaPreguntaCerradaCollection = rc
AND rc.preguntaCerrada = p
AND pd.criterio = c AND pd.instrumentos = e.idInstrumento
AND rc.escala = es
AND e.idPeriodo.idPeriodo = '2013-p1'
ORDER BY e.evaluado.nombre, e.evaluador.nombre, c.descripcion, e.evaluado.centroCosto
所以,我在这里,标准,问题,答案,每个标准的值等等。这一列是回复每个答案的数值的那一列:
(pd.puntaje*rc.escala.valor/SIZE(c.preguntaCerradaCollection))
但我需要每个员工的总价值,因为我需要知道谁是'n'最好的员工,或者最差的。
如果我使用SUM函数,查询执行器将返回:
错误130:无法对包含聚合或子查询的表达式执行聚合函数
这可能是什么解决方案? 提前致谢