J'ai une colonne de type date
avec le format de valeur suivant: YYYY-MM-DD
(Par exemple. 2018-08-03
). Je veux obtenir l'équivalent de l'horodatage Unix des dates, mais sans le fuseau horaire.
F.e. la date 2018-08-03
doit être égale à 1533254400
(à partir du calcul ici ).
J'ai essayé to_timestamp(my_date_column, 'YYYY-MM-DD')
mais il renvoie l'erreur function to_timestamp(date, unknown) does not exist
. J'ai essayé d'ajouter différentes variantes de ::timestamp...
À la fin de l'appel de fonction, mais en vain.
Actuellement, je fais la conversion d'horodatage dans la couche application, mais j'aimerais dédier ce travail à la base de données.
D'accord ... après un changement d'approche, j'ai décidé d'essayer "d'extraire" les données au lieu de les convertir. Il s'est avéré qu'il y a la fonction oh-so pratique extract
dans Postgres, qui fait exactement ce que je veux.
extract(Epoch from my_date_column) as date_timestamp
Ici est une explication plus détaillée.