3

我有如下表中的数据:

  **start_date**                         **end_date**
---------------                      -----------------
2011-06-27 13:24:45.137417          2011-06-28 05:34:26.54939
2011-09-30 09:09:00.501381          2011-10-03 23:38:46.479824

预期结果如下:

Diff
-------
0.16
3.14

其中小数点前为“天”,小数点后为“小时”

我尝试使用 extract('epoch' from (end_date-start_date))/(3600*24)

但它以 100 的格式给出“小时”值,即第一条记录为 0.673395971909722,第二条记录为 3.60400438012731

4

1 回答 1

6

请参阅文档中的格式化函数。

SELECT to_char(end_date - start_date, 'D.HH24') AS diff FROM your_table;
0.16
3.14

希望能帮助到你。

于 2012-08-24T13:21:10.687 回答