Ver Mensaje Individual
  #3  
Antiguo 25-09-2007
Avatar de duilioisola
[duilioisola] duilioisola is online now
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Reputación: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
El error te está diciendo que el select que haces para hacer el update da mas de un valor.

Código SQL [-]
update resultadoevalu
set resultadocalifresp=(
select sum(cc.calificacion) /max(codigoresponsabilidad) as totalcaliresp
from personal p 
inner join  calificacionresponsabilidadjefe  cc on cc.cedula=p.cedula 
group by cc.fechaevaluacion,p.cedula)
where resultadocalifresp=0 and resultadocalifhab=0 and totalevalu=0

Si ese select devuelve más de un valor, ¿cuál será el que tiene que utilizar para meter en resultadocalifresp?

Realiza el select interno y verás que te devuelve dos valores

Código SQL [-]
select sum(cc.calificacion) /max(codigoresponsabilidad) as totalcaliresp
from personal p 
inner join  calificacionresponsabilidadjefe  cc on cc.cedula=p.cedula 
group by cc.fechaevaluacion,p.cedula)

/*seguramente devuelve dos o más valores*/
Responder Con Cita