如何将Date数据类型转换为整数?(postgresql)

时间:2013-07-09 08:20:32

标签: sql postgresql postgresql-9.2

我希望在一个表中定义为整数的列中没有天数,即

select age('2013-04-06','2013-04-04') - >给我2days作为输出

我希望将2天存储到数据类型为整数的列中。 我试过这个,但我从这个查询得到了数小时......

SELECT (EXTRACT(epoch FROM (select age('2013-07-06','2013-07-04')))/3600); - > 48,即48小时output

我需要2天或48小时内的integer value(2)

如何完成这项工作?

2 个答案:

答案 0 :(得分:4)

age(...)生成interval。然后,您可以使用extract上的interval来获取日期:

select extract(day from age('2013-04-06','2013-04-04'));

对于某些输入,您需要justify_interval interval之前调用extract - 但age会产生预先对齐的间隔,因此不应该在这种情况下需要。

答案 1 :(得分:2)

select '2014-05-02'::date - '2013-04-01'::date;

给出天数,甚至是天,月或年之间的差异