如何从daterange
类型的列中提取天数?有可能吗?
我尝试了
select age(daterange('2018-01-01', '2018-02-01'));
但是它失败了,我也没有运气就尝试投射到int
。我查看了文档,但在范围类型中找不到能完成此功能的任何功能。
答案 0 :(得分:0)
我认为这应该有效:
SELECT DATE_PART('day', '2018-01-01'::timestamp - '2018-02-01'::timestamp);
[编辑]
使用daterange
,这将起作用:
SELECT upper(daterange('2018-01-01', '2018-02-01')) - lower(daterange('2018-01-01', '2018-02-01'))