La idea es hacer una consulta donde me muestren los mensajes enviados y no enviados en un rango de fecha, cada fila debe contener el detalle de ese dia.
estoy usando SQL Server 2008
tabla = BZ_Mensaje
campo con la fecha = FechaHoraAplicacionEstado
campo con el estatus del mensaje = CodigoEstadoMensaje
2 = enviados
3 = no enviados
Esta consulta muestra la sumatoria de mensajes enviados y no enviados en el rango de las fechas, pero lo que necesito es el detalle diario.
--------------------------------------------------------
Consulta
SELECT
YEAR(FechaHoraAplicacionEstado) AS ano, -- año
MONTH(FechaHoraAplicacionEstado) AS mes,
DAY(FechaHoraAplicacionEstado) AS dia,
(SELECT COUNT(*) FROM BZ_Mensaje WHERE CodigoEstadoMensaje = 2 AND
YEAR(FechaHoraAplicacionEstado) = 2011 AND
MONTH(FechaHoraAplicacionEstado)= 03 AND
DAY(FechaHoraAplicacionEstado) = 27) AS enviados,
(SELECT COUNT(*) FROM BZ_Mensaje WHERE CodigoEstadoMensaje = 8 AND
YEAR(FechaHoraAplicacionEstado) = 2011 AND
MONTH(FechaHoraAplicacionEstado)= 03 AND
DAY(FechaHoraAplicacionEstado) = 27) AS no_enviados
FROM BZ_Mensaje
WHERE
YEAR(FechaHoraAplicacionEstado) = 2011 AND
MONTH(FechaHoraAplicacionEstado)= 03 AND
DAY(FechaHoraAplicacionEstado) = 27
GROUP BY
YEAR(FechaHoraAplicacionEstado),
MONTH(FechaHoraAplicacionEstado),
DAY(FechaHoraAplicacionEstado)
---------------------------------------------------------------------
Resultado de la consulta
ano mes dia enviados no_enviados
2011 3 25 224398 36543
2011 3 26 224398 36543
---------------------------------------------------------------------
Resultado esperado y/o deseado
ano mes dia enviados no_enviados
2011 3 25 119331 24971
2011 3 26 105067 11572