Cómo consultar múltiples SUMs del mismo elemento utilizando SQL en iReport
Estoy creando un JasperReport utilizando iReport y, como tal, estoy limitado * a una consulta SQL.
Tengo una tabla de 'estadísticas', con un 'nombre' (VARCHAR), 'cuenta' (INTEGER) y columnas 'datetime' (DATETIME).
Es lo suficientemente simple para obtener la suma de la columna "recuento" cuando el "nombre" fue "prueba" para el último día, y de manera similar para la última semana y el mes (ver más abajo)
Declaración SQL de trabajo:
<code> SELECT SUM(count)as 'today' FROM statistics WHERE name = "test" AND $P{oneDayAgo} <= datetime AND datetime <= $P{now} </code>Sin embargo, como solo tengo una declaración SQL con la que trabajar, necesito combinarlos de alguna manera. Intenté usar UNION (como a continuación) pero esto no funcionó.
Declaración SQL fallida:
<code>SELECT SUM(count)as 'today' FROM statistics WHERE name = "test" AND $P{oneDayAgo} <= datetime AND datetime <= $P{now} UNION SELECT SUM(count)as 'thisWeek' FROM statistics WHERE name = "test" AND $P{oneWeekAgo} <= datetime AND datetime <= $P{now} UNION SELECT SUM(count)as 'thisMonth' FROM statistics WHERE name = "test" AND $P{oneMonthAgo} <= datetime AND datetime <= $P{now} </code>
(*) se pueden agregar consultas adicionales solo para gráficos o tablas de referencias cruzadas, ninguna de las cuales cumple mi propósito.