Ver Mensaje Individual
  #7  
Antiguo 26-09-2007
Avatar de duilioisola
[duilioisola] duilioisola is offline
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
En este caso, lo único que se me ocurre es hacer un procedimiento...
Código:
95,100,100,62,100,93,62,25,75...

a  65  95  75  78
b  75   0    0   0
c  40  63  75  59
d  75   0    0   0
e  80   0    0   0

pasa a -->

a  65  95  75  78
b  75  95   0   0
c  40  63  75  59
d  75 100   0   0
e  80 100   0   0
Código SQL [-]
procedure rellenar_resultadoevalu
as
declare variable cedula varchar(1); /*aqui debes poner lo que corresponda*/
declare variable temporal double precision; /*supongo que no es entero porque sale de una division*/
begin
   /*Recorro todos los resultados de la subconsulta y los meto en temporal*/
   for select 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
   into :temporal do
   begin
      /*inicializo cedula como vacio*/
      cedula = '';
      /*selecciono lo primera cedula a actualizar*/
      /*tener en cuenta el orden*/
      select first cedula from resultadoevalu
      where resultadocalifresp=0 and resultadocalifhab=0 and totalevalu=0
      order by cedula
      into :cedula;
      /*Si encuentro una cedula que cumpla la condicion hago el update*/
      if (cedula <> '') then
         update resultadoevalu
         set resultadocalifresp=temporal
         where cedula=:cedula;
   end
end
y luego
Código SQL [-]
execute procedure rellenar_resultadoevalu;

Nota: Qué pasa con los valores que sobran en la subconsulta si no se encuentran suficientes registros que cumplan la condición en resultadoevalu?
95,100,100,62,100,93,62,25,75,...

Nota 2: En qué orden deben entrar los valores de la subconsulta en la tabla resultadoevalu?

Última edición por duilioisola fecha: 26-09-2007 a las 16:09:13.
Responder Con Cita