Skip to content

Instantly share code, notes, and snippets.

@cquest
Last active June 13, 2016 21:01
Show Gist options
  • Save cquest/da87d06e149621653eddc36b0d0cbe46 to your computer and use it in GitHub Desktop.
Save cquest/da87d06e149621653eddc36b0d0cbe46 to your computer and use it in GitHub Desktop.
Dates de changement heure d'hiver / heure d'été
/* changements heure hiver > été depuis 1981 le dernier dimanche de mars à 1h UTC soit 2h (hiver) / 3h (été) en France */
select april::timestamptz
- interval '1 day' * case when extract(dow from april)=0 then 7 else extract(dow from april) end
from (select generate_series('1981-04-01 01:00:00+00','2050-04-01 01:00:00+00', interval '1 year') as april) as m;
/* changements heure été > hiver de 1981 à 1995 le dernier dimanche de septambre à 1h UTC soit 2h (hiver) / 3h (été) en France */
select sept::timestamptz
- interval '1 day' * case when extract(dow from sept)=0 then 7 else extract(dow from sept) end
from (select generate_series('1981-10-01 01:00:00+00','1995-10-01 01:00:00+00', interval '1 year') as sept) as m;
/* changements heure été > hiver depuis 1996 le dernier dimanche d'octobre à 1h UTC soit 2h (hiver) / 3h (été) en France */
select nov::timestamptz
- interval '1 day' * case when extract(dow from nov)=0 then 7 else extract(dow from nov) end
from (select generate_series('1996-11-01 01:00:00+00','2050-11-01 01:00:00+00', interval '1 year') as nov) as m;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment