在 SQL 开发人员中减去铸造日期 (EPOCH) 时如何删除小数
How to remove the decimals when Subtracting casted Dates (EPOCH) in SQL Developer
我将两个纪元日期彼此相减以获得一个正整数,该整数显示从创建到完成(也称为修改)所经过的天数。
这是我查询的一个片段,它来自 SQL Developer 20.2.0:
(TO_DATE('19700101', 'YYYYMMDD') + (DATEMODIFIED / 86400))-(TO_DATE('19700101', 'YYYYMMDD') + (DATECREATED / 86400)) AS "Age at Completion",
但是,这会导致输出:
74.2922256787899889869
我不需要看到所有那些小数位。这样的结果就足够了:
74.2922256787899889869 = 74
或
74.5922256787899889869 = 74
我认为 ROUND 函数可能是我正在寻找的,但我不知道如何在该行中实际使用它。有人可以帮忙吗?提前谢谢你。
(A + B) - (A + C) == A + B - A - C == B - C
那么为什么不干脆 ROUND((DATECREATED - DATEMODIFIED) / 86400)
呢?
或者这样:
DATEMODIFIED * INTERVAL '1' SECOND - DATECREATED * INTERVAL '1' SECOND
EXTRACT(DAY FROM (DATECREATED - DATEMODIFIED) * INTERVAL '1' SECOND)
我将两个纪元日期彼此相减以获得一个正整数,该整数显示从创建到完成(也称为修改)所经过的天数。
这是我查询的一个片段,它来自 SQL Developer 20.2.0:
(TO_DATE('19700101', 'YYYYMMDD') + (DATEMODIFIED / 86400))-(TO_DATE('19700101', 'YYYYMMDD') + (DATECREATED / 86400)) AS "Age at Completion",
但是,这会导致输出: 74.2922256787899889869
我不需要看到所有那些小数位。这样的结果就足够了:
74.2922256787899889869 = 74
或
74.5922256787899889869 = 74
我认为 ROUND 函数可能是我正在寻找的,但我不知道如何在该行中实际使用它。有人可以帮忙吗?提前谢谢你。
(A + B) - (A + C) == A + B - A - C == B - C
那么为什么不干脆 ROUND((DATECREATED - DATEMODIFIED) / 86400)
呢?
或者这样:
DATEMODIFIED * INTERVAL '1' SECOND - DATECREATED * INTERVAL '1' SECOND
EXTRACT(DAY FROM (DATECREATED - DATEMODIFIED) * INTERVAL '1' SECOND)