如何在几小时内获得两个日期差异?

时间:2015-11-10 17:13:04

标签: sql oracle datediff

我正在尝试添加员工计算的总小时数,我可以获得每项工作的工时,但不能将它们加在一起。

我正在使用以下代码来远行。

SELECT 
      TO_DATE(TRIP.RETURN_DATE, 'DD-MM-YYYY')
      - TO_DATE(TRIP.DEPARTURE_DATE, 'DD-MM-YYYY') AS duration,
      TRIP.EMPLOYEE_NO AS employee
 FROM EMPLOYEE, TRIP;

它以下列格式返回结果:

 DURATION | EMPLOYEE 
---------------------
    5     | 0037759    
    8     | 0037759    
    2     | 0037759    
    3     | 0037759    
    3     | 0037759  

如何为每位员工添加持续时间?

1 个答案:

答案 0 :(得分:0)

我不知道你的桌子结构所以我在这里做了一些假设。您还缺少一个JOIN来链接员工和旅行。

SELECT SUM(TO_DATE(TRIP.RETURN_DATE, 'DD-MM-YYYY') - TO_DATE(TRIP.DEPARTURE_DATE, 'DD-MM-YYYY')) duration, 
TRIP.EMPLOYEE_NO AS employee
FROM employee JOIN trip on trip.employee_no = employee.employee_no

GROUP BY  employee.employee_no