Skip to content

Instantly share code, notes, and snippets.

@rmwpl
Created August 16, 2016 13:09
Show Gist options
  • Save rmwpl/18082c6a8c5485e4b1ae2396aa1d547e to your computer and use it in GitHub Desktop.
Save rmwpl/18082c6a8c5485e4b1ae2396aa1d547e to your computer and use it in GitHub Desktop.
PostgreSQL countdown to a specified date, displayed in weeks, days, hours, minutes and seconds
with seconds as (
select extract(epoch from ('2016-09-16 10:15:00'::timestamp - now()::timestamp)) as value
), minutes as (
select value/60 as value from seconds
), hours as (
select value/60 as value from minutes
), days as (
select value/24 as value from hours
), weeks as (
select value/7 as value from days
)
select floor(weeks.value) as weeks, floor(days.value-floor(weeks.value)*7) as days, floor(hours.value-floor(days.value)*24) as hours, floor(minutes.value-floor(hours.value)*60) as minutes, floor(seconds.value-floor(minutes.value)*60) as seconds from weeks, days, hours, minutes, seconds;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment