Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/01/2006, 10:17
orharo2003
 
Fecha de Ingreso: abril-2004
Ubicación: México D.F.
Mensajes: 1.724
Antigüedad: 21 años
Puntos: 4
Acumlador en sentencia sql

Buenas, tengo dias con una sentencia sql que me viene martirizando, lo podría resolver con 2 recorsdsets, pero siento que se puede con uno solo.

Ojalá pudieran orientarme por que ya me siento .

Explico :

Tengo una tabla de movimiento_solicitud_mercancia que me lleva las partidas de las solicitudes, dichas partidas están relacionadas con la tabla principal llamada solicitud_traspaso_mercancia a través del numero de solicitud. Bueno entonces lo que requiero saber es de que se vaya recorreidno partida x partida en cada documento y si el campo x_surtir es mayor a 10 se sume un 1, por ejemplo :

la tabla movimiento_solicitud_mercancia tiene la estructura

----------- -------- ---------------
documento x_surtir clave_interna
----------- -------- ---------------

68 9 15
68 12 21
68 40 75


y la tabla solicitud_traspaso_mercancia contendría la estructura

----------- ---------------
documento (n) campos (datos de la solicitud)...
----------- ---------------

68
69
70
71

lo que no puedo hacer es que me de :
-----------------------
documento partidas
-----------------------
68 2

el 2 obtenerlo porque el 9 es menor que 10, entonces se le sume un 0 y como los demás son masyores a 10 sumarle 1 + 1

E INTENTADO LO siguiente Pero no me funciona :

SELECT (mts.documento),mts.clave_interna,

case when

(select sum(k.x_surtir) from movimiento_solicitud_traspaso k where k.clave_interna=mts.clave_interna and k.documento=mts.documento)> 10 then
sum(1)
else
sum(0)
end


as total_partidas FROM movimiento_solicitud_traspaso mts inner join solicitud_traspaso_mercancia stm on stm.documento=mts.documento