Ver Mensaje Individual
  #2 (permalink)  
Antiguo 08/04/2015, 04:05
GeriReshef
 
Fecha de Ingreso: julio-2012
Ubicación: Israel
Mensajes: 360
Antigüedad: 11 años, 10 meses
Puntos: 40
Respuesta: Sumar total en una agrupación

Espero que te entendí: la cantidadTotal esta calculada dentro de la subconsulta (el mismo total a lo largo de todo el conjunto), y afuera de ella como Max(cantidadTotal) porque es obligatorio poner la en una función de agregado:

Código SQL:
Ver original
  1. SELECT  CR.Tipo [Tipo],
  2.         ROUND(COALESCE(SUM(CR.[cantidad]) / (NULLIF(SUM(CR.valor), 0)), 0), 2) [Reultado],
  3.         MAX([cantidadTotal]) [cantidadTotal]
  4. FROM    (SELECT T2.TYPE [Tipo],
  5.                 ISNULL((SELECT SUM((Quant1 - Quant2))
  6.                         FROM    TQUANT A1
  7.                         WHERE   A1.Id = T0.Id
  8.                                 AND A1.DATE <= GETDATE()) * T0.VALUE, 0)
  9.                 [cantidad],
  10.                 SUM([cantidad]) OVER() [cantidadTotal]
  11.         FROM    TVALUES T0) AS CR
  12. GROUP BY CR.Tipo
  13. ORDER BY CR.Tipo;
__________________
El Castellano no es mi lengua materna: discúlpenme por los errores gramaticales.
Mi blog