1

在 Oracle 9i 中,获取包括时间在内的两个日期之间的差异的最佳方法是什么?类似于 C# 中的 Timespan 函数。

谢谢,查克

4

3 回答 3

3

当您减去两个日期时,您会得到天数的差异。如果你把这个数字乘以 24,你就会得到小时数的差异。将该数字乘以 60,您会得到分钟数之差,等等。

于 2009-12-04T09:14:26.943 回答
3

您可以将差异表示为数字天数或间隔数据类型:http: //download.oracle.com/docs/cd/B10501_01/server.920/a96540/expressions9a.htm#1033525

于 2009-12-04T10:23:01.087 回答
0

当您在日期之间进行减法(类型 DATE)时,您会得到一个表示天数的数字(注意这是 NUMBER(p,s) 类型,而不是 INTEGER,因为许多 T-SQL 人员在 Oracle 中会感到困惑) . 然后,您可以将该数字乘以 24*60*60 以将其转换为秒。

n_diff := ABS(date1 - date2) * 24*60*60;
于 2016-08-19T13:48:14.827 回答