Vous n'êtes pas identifié(e).
Pages : 1
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
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
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
Pages : 1