Tout d'abord, les dates doivent être des valeurs de timestamp
type (ajoutez donc ::timestamp
si vous les spécifiez simplement en tant que littéraux de chaîne).
Si vous soustrayez deux horodatages, le résultat est de interval
type, qui décrit une durée (en heures, minutes, secondes, etc.) Vous pouvez utiliser extract(epoch from interval_value)
pour convertir l'intervalle en un nombre absolu de secondes.
Donc, en mettant tout cela ensemble :
select extract(epoch from ('2011-12-30 09:55:56'::timestamp - '2011-12-30 08:54:55'::timestamp));
Rappelez-vous que le ::timestamp
n'est nécessaire que pour convertir la chaîne littérale en horodatage :vous n'en avez pas besoin si vous utilisez la valeur d'une colonne d'horodatage, par exemple.