PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Monate zwischen zwei Daten funktionieren

Dies lässt sich einfach in PostgreSQL neu implementieren, indem Sie einfach SQL-Funktionen verwenden, um das aufzuräumen, was Sie bereits haben:

create function months_of(interval)
 returns int strict immutable language sql as $$
  select extract(years from $1)::int * 12 + extract(month from $1)::int
$$;

create function months_between(date, date)
 returns int strict immutable language sql as $$
   select abs(months_of(age($1, $2)))
$$;

Und jetzt select months_between('1978-06-20', '2011-12-09') erzeugt 401.