Pessoal,
tenho que fazer uma consulta no BD e o retorno tenho que separar por períodos, mas o que define estes períodos são as mensagens de inicio, meio e fim, onde tenho que pegar valores dentro destes períodos e calcular média, e saber quantos inicio, meio e fim, teve naquela consulta:
Fiz esse script:
select * from tb_telemetria
where id_ult_mensagem in ('inicio','meio','final')
and cod_dispositivo = 'QAG0034306'
and cod_usuario = 6
AND to_char( dt_hora_sistema, 'DD/MM/YYYY') BETWEEN ('07/09/2014') AND ('30/10/2014')
AND to_char( dt_hora_sistema, 'HH24:MI') BETWEEN ('00:00') AND ('22:22')
order by dt_hora_sistema;
Assim esta trazendo tudo dentro das datas… mas o que preciso fazer:
1º - saber quantos trios veio nesse período (inicio, meio e fim, tipo é uma viagem, então quantas viagens fez?)
2º - Por exemplo, deu 3 viagens, em cada viagem, eu pego os valores de inicio até o final e faço a média de um campo
Exemplo:
1ª viagem:
inicio (começo a pegar o valor do campo)
meio (vou pegando o valor)
meio (vou pegando o valor)
final (mostro a media)
2ª viagem:
inicio (começo a pegar o valor do campo)
meio (vou pegando o valor)
meio (vou pegando o valor)
final (mostro a media)
E caso a 3ª viagem não estiver completa por causa do período, eu não mostro
Dados do BD:
char integer varchar varchar timestamp without
dispositivo usuario campo mensagem data
"QAG0034306"; 6; " "; "INICIO"; "1969-12-31 17:59:59"
"QAG0034306"; 6; "Inf"; "MEIO"; "2014-10-08 08:44:29"
"QAG0034306"; 6; "Inf"; "MEIO"; "2014-10-08 08:44:59"
"QAG0034306"; 6; "11."; "MEIO"; "2014-10-08 08:45:29"
"QAG0034306"; 6; "Inf"; "MEIO"; "2014-10-08 08:45:59"
"QAG0034306"; 6; "5.7"; "MEIO"; "2014-10-08 08:46:29"
"QAG0034306"; 6; "6.3"; "MEIO"; "2014-10-08 08:46:59"
"QAG0034306"; 6; "9.2"; "MEIO"; "2014-10-08 08:47:29"
"QAG0034306"; 6; "25.2"; "MEIO"; "2014-10-08 08:47:59"
"QAG0034306"; 6; "25.2"; "MEIO"; "2014-10-08 08:48:29"
"QAG0034306"; 6; "25.2"; "FINAL"; "1969-12-31 17:59:59"
"QAG0034306"; 6; " "; "INICIO"; "1969-12-31 17:59:59"
"QAG0034306"; 6; " "; "MEIO"; "2014-10-08 09:04:38"
"QAG0034306"; 6; " "; "MEIO"; "2014-10-08 09:05:08"
"QAG0034306"; 6; "13.6"; "MEIO"; "2014-10-08 09:05:38"
"QAG0034306"; 6; "Inf"; "MEIO"; "2014-10-08 09:06:08"
"QAG0034306"; 6; "Inf"; "MEIO"; "2014-10-08 09:06:38"
"QAG0034306"; 6; "Inf"; "MEIO"; "2014-10-08 09:07:08"
"QAG0034306"; 6; "17.3"; "MEIO"; "2014-10-08 09:07:38"
"QAG0034306"; 6; "12.8"; "MEIO"; "2014-10-08 09:08:08"
"QAG0034306"; 6; "5.5"; "MEIO"; "2014-10-08 09:08:38"
"QAG0034306"; 6; "39.8"; "MEIO"; "2014-10-08 09:09:38"
"QAG0034306"; 6; "39.8"; "FINAL"; "1969-12-31 17:59:59"