PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 17/02/2014 17:53:20

liofer
Membre

TimeStamp+sélection de données horaire

Bonjour,

Nouveau sur le forum et nouveau en sql, je m'excuse de mes lacunes.
J'ai récupéré une base postgreSQL, avec des tables où il y a une valeur toutes les 5 ou 6minutes.
Les tables contiennent une colonne 'horodatage'de type TimeStamp et une collonne 'value' de type float.
Comment puis-je extraire les valeurs de ces tables avec un pas de temps horaire ?
Une données toutes les heures ? quel en serait la requête?

Merci

Hors ligne

#2 18/02/2014 11:42:49

damalaan
Membre

Re : TimeStamp+sélection de données horaire

Bonjour,

Vous pourriez prendre la valeur max (ou min) de chaque heure par exemple :
soit une table test avec un champ timestamp et un champ valeur

WITH 
a as (
select  max(heure) as h_max from test 

group by date_part('year',heure), date_part('month', heure), date_part('day', heure),date_part('hour', heure))

select heure, valeur from test inner join a on test.heure=a.h_max;

J'utilise ici une CTE mais il y a peut être qqc de plus propre à faire avec les fonctions de fenêtrage

Après réflexion, je ne gère pas le "pas" d'une heure!!

Dernière modification par damalaan (18/02/2014 11:57:47)

Hors ligne

#3 18/02/2014 20:11:01

liofer
Membre

Re : TimeStamp+sélection de données horaire

J'avais une erreur sur le WITH mais sur un autre forum
On m'a indiqué
la requête suivante (sélectionner les minutes à O)
En Time stamp la fonction est:
SELECT *
FROM LaTable
WHERE EXTRACT(MINUTE FROM LaColonne) = 0

ça fonctionne

Hors ligne

Pied de page des forums