2009-11-30 26 views
15

Utilizo el sql a continuación en sqlite para agrupar por intervalos de tiempo. El primero es el grupo durante el día y el segundo grupo por hora:Grupo SQLITE por

select strftime('%Y-%m-%dT%00:00:00.000', date_time),line, count() from entry group by strftime('%Y-%m-%dT%00:00:00.000', date_time) 

select strftime('%Y-%m-%dT%H:00:00.000', date_time),line, count() from entry group by strftime('%Y-%m-%dT%H:00:00.000', date_time) 

¿Cómo puedo grupo por 10 minutos de intervalo

+0

Para que quede claro: cada 10 minutos todos los días - o simplemente cada 10 intervalo mínimo independientemente del día? –

+0

Disculpe, no entiendo su pregunta. La idea es agrupar registros por intervalos de tiempo. Las consultas que enumeré agrupan por un día y agrupan por una hora. Ahora necesito un grupo de 10 minutos. Entonces, si tengo registros insertados durante una semana, aún quiero agruparlos por 10 minutos. Espero que esto esté claro ahora. – yaza

Respuesta

10
select ... from entry 
group by strftime('%Y%m%d%H0', date_time) + strftime('%M', date_time)/10; 
+0

Debería ser '||' en lugar de '+' allí; de lo contrario, tratará los resultados de ambos 'strftime's como números y los sumará, lo que resulta en un error bastante difícil de rastrear. – Killah