Ver Mensaje Individual
  #4 (permalink)  
Antiguo 26/12/2007, 16:47
Avatar de Beakdan
Beakdan
 
Fecha de Ingreso: diciembre-2001
Ubicación: Monterrey, Nuevo León
Mensajes: 433
Antigüedad: 22 años, 4 meses
Puntos: 7
Re: Sacar cantidades totales por meses de trimestre

¿No te estás complicando demasiado? La solución indicando el rango inicial y final de la fecha era excelente, sólo no me convence el uso de una función para obtener la fecha.
¿Que tal si no usas las funciones?

Código:
DECLARE @trimestre INT, @anio CHAR(4), @cliente INT
DECLARE @dateini DATETIME, @dateend DATETIME
SET @trimestre = 4
SET @anio ='2007'
SET @dateini = CASE @trimestre
                   WHEN 1 THEN @anio +'0101'
                   WHEN 2 THEN @anio +'0401'
                   WHEN 3 THEN @anio +'0701'
                   WHEN 4 THEN @anio +'1001'
               END
SET @dateend =dateadd(m, 3, @dateini)
SET @cliente = 4724
 
SELECT      DATENAME(M, @anio + RIGHT('0'+CAST(MONTH(periodo) AS VARCHAR(2)), 2) + '01') AS Fecha,
         SUM(ISNULL(litros, 0)) AS Cantidad
FROM        ALBARANES_C
WHERE       cliente = @cliente
          AND fecha >= @dateini
          AND fecha < @dateend
GROUP BY    MONTH(fecha)
ORDER BY    MONTH(fecha)