日期间的双精度月数postgres
答
有很多方法可以计算出类似的结果,并且根据用于计算的规则,您将得到不同的结果。
以下方式为您提供了两个日期之间的数字在一定时间内每年的12ths的:
select (date'2016-05-04' - date'2015-03-21')/365.0 * 12
在13.48以上结果。
下面的方式给出了一个或许更准确的数字(13.47),但要复杂得多,并且导致最小差异:
select extract('years' from age) * 12 + extract('months' from age) + extract('days' from age)/30
from (select age('2016-05-04'::timestamp, '2015-03-21'::timestamp)) a
0.42或** **其中0.43个月? –
我并不特别在乎,它可能是30天或31天,29天或28天中的13天。只要它是整月数+大概一个月的数量的近似部分,我就满意了。 –