Em 30 de abril de 2013 15:34, Moisés P. Sena <[email protected]>escreveu:

> Boa tarde pessoal,
>
> Tenho dados em uma tabela, e um campo de chave primaria que é um TIMESTAMP
> e preciso calcular a média horária de uma coluna VALOR:
>
> create table dados (
>   datahora TIMESTAMP NOT NULL PRIMARY KEY,
>   valor INT
> );
>
> Cada registro é inserido de 10 em 10 minutos, preciso mostrar a média de
> cada hora.
> Um intervalo de datas será definido posteriormente.
>
> *EXEMPLO:*
> *datahora | valor*
> 2013-01-01 00:00:00 | 1
> 2013-01-01 00:10:00 | 3
> 2013-01-01 00:20:00 | 2
> 2013-01-01 00:30:00 | 5
> 2013-01-01 00:40:00 | 7
> 2013-01-01 00:50:00 | 2
> 2013-01-01 00:00:00 | 4
> 2013-01-02 00:10:00 | 3
> 2013-01-02 00:20:00 | 2
> 2013-01-02 00:30:00 | 5
> 2013-01-02 00:40:00 | 3
> 2013-01-02 00:50:00 | 6
>
> *Resultado esperado:*
> 2013-01-01 | 3.33
> 2013-01-02 | 3.83
>
> Alguma sugestão de como fazer isso direto no Postgres?
> Considerem que so tenho em maos o PSQL em um terminal Linux.
>
>
> Acho que seria algo como SELECT  datahora, AVG(valor) FROM tabela GROUP BY
datahoraORDER BY datahor;

[]s
Danilo
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a