Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde,
Estou com um dúvida que me rendeu o dia. Tenho uma determinada tabela a qual preciso separá-la por período de 30 em 30 minutos, fazer a média desses registros, e fazer um 'group by'.
select count(id), ROUND(sum(pe)/count(ID)) as pe, ROUND(sum(pms)/count(ID)) as pms, ROUND(sum(pc)/count(ID)) as pc,
ROUND(sum(livre)/count(ID)) as livre
FROM lucy_logger.int_temp_graf i
where (TIMEDIFF(hora,DATE_ADD('2009-09-03 00:00:00', INTERVAL 30 Minute))) <= '-00:30:00'
UNION ALL
select count(id), ROUND(sum(pe)/count(ID)) as pe, ROUND(sum(pms)/count(ID)) as pms, ROUND(sum(pc)/count(ID)) as pc,
ROUND(sum(livre)/count(ID)) as livre
FROM lucy_logger.int_temp_graf i
where (TIMEDIFF(hora,DATE_ADD('2009-09-03 00:30:00', INTERVAL 30 Minute))) <= '-00:30:00'
Essa query que eu fiz, funciona porém terei que replicar para o dia todo, então teriamos 48 selects em union, tem tudo pra da merd... rsrs. Alguém conhece alguma função ou outro jeito!? Conto com vocês!!
Abs,
Carregando comentários...