sql >> Database >  >> RDS >> PostgreSQL

Postgresql krijgt de eerste en laatste dag van alle iso-week in een bepaald jaar

U kunt generate_series() . gebruiken om de ingewikkelde CTE- en datumberekeningen te vermijden. Hier is een voorbeeld om u op weg te helpen:

select d, d + interval '6 days'
from generate_series('2016-01-01'::date, '2016-12-31'::date, '1 day'::interval) d
where date_trunc('week', d) = d

U wilt in de tweede termijn een casus toevoegen om in 2017 alles te schrappen, en het kan worden herschreven om per week te gaan, maar het zou u op het goede spoor moeten brengen.




  1. Een cursor declareren na het begingedeelte van een Oracle PL/SQL-procedure

  2. orakel trigger-log

  3. Hoe ORA-00939 op te lossen:te veel argumenten voor functiefout?

  4. Update ANSI_NULLS optie in een bestaande tabel