Bonjour,
Via mon application PHP, je stock mes date au format timestanp dans ma base postgres 7.4. Je souhaite extraire l'année via une requête sql. Le problème est que je ne trouva pas la fonction qui fait cela.
Pouvez vous m'aider ?
Merci
Mic
Bonjour,
Via mon application PHP, je stock mes date au format timestanp dans ma base postgres 7.4. Je souhaite extraire l'année via une requête sql. Le problème est que je ne trouva pas la fonction qui fait cela.
Pouvez vous m'aider ?
Merci
Mic
tiens c'est là
ok merci, j'ai pourtant regarder dans la doc de postgres mais je ne l'ai pas vu.
En revanche moi mes valeurs sont sous le format : 982352320 (nombre de seconde depuis l'année 1970....) et je ne voit pas de fonction qui résoud mon problème
Mic
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 select date_part('year',to_timestamp(1182327054)); --- Renvoie 2007 --- date_part est équivalent à extract select extract('year' from to_timestamp(1182327054)); --- Renvoie 2007
ok, mais il me dit que to_timestamp n'existe pas/
Comment je fais pour l'avoir cette fonction
Merci
Mic
Ca n'a rien à voir avec ta demande, mais il y a une fonction qui je trouve génial, c'est date_trunc
En fait, dans notre cas, la fonction limite la date au jour uniquement. Les heures, minutes et secondes sont à 0.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 select date_trunc('day', to_timestamp(1182327054)); -- Renvoie 2007-06-20 00:00:00+02
Idem, mais la date est limité à l'heure. Les minutes et secondes sont à 0.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 select date_trunc('hour', to_timestamp(1182327054)); -- Renvoie 2007-06-20 10:00:00+02
C'était la minute découverte !!
je viens de trouver la fameuse fonction to_timestamp
la voici
Fonction utile à mettre dans la Faq ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 CREATE FUNCTION to_timestamp (double precision) returns timestamptz language sql as ' select ( (\'epoch\'::timestamptz + $1 * \'1 second\'::interval) at time zone \'UTC\' ) at time zone \'UTC\' ';
merci à tous
Mic
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager