在日期字段中减去两次

我有两个专栏,旨在为已故员工留出时间。以下是其内容的示例:

select TO_CHAR(VAHRUAE_actualInTime,'HH24:MI') actualTime,TO_CHAR(VAHRUAE_InTime,'HH24:MI') InTime from VAHRUAE_DailyAttendance

actualTime          InTime
   01:25             00:57
   05:46             00:57
   06:00             00:57

我想从Intime中减去actualTime。我在互联网上进行了很多搜索,并尝试了很多想法,但没有找到解决方案。我考虑过将小时数从分钟数中减去并减去,然后加入它们。问题是显示负值(例如46-57将导致-11min)。什么是正确的解决方案。
更新:
结果应该以小时:分钟形式,例如:
05:03(从06:00-00:57开始)

(如果有帮助)

select VAHRUAE_actualInTime actualTime,VAHRUAE_InTime InTime from VAHRUAE_DailyAttendance

  actualTime            InTime
--------------         --------
   01-JAN-70             00:57
   01-JAN-70             00:57
   01-JAN-70             00:57
desc VAHRUAE_DailyAttendance

Name                          Type
----------                   ------
VAHRUAE_actualInTime          Date
VAHRUAE_InTime                Date

ksjfhvqkugt9a 回答:在日期字段中减去两次

您可以尝试:

SELECT TO_TIMESTAMP(ActualTime) - TO_TIMESTAMP(InTime) FROM VAHRUAE_DailyAttendance;

或其他方式:

SELECT (ActualTime - InTime)*24*60 AS difference_in_minutes from VAHRUAE_DailyAttendance;

如果ActualTime位于过去,则此值为负。如果您想要一个整数值,则将结果四舍五入

select round((ActualTime - InTime)*24*60,0)
  from test;
本文链接:https://www.f2er.com/3165899.html

大家都在问