2016-02-26 34 views
0

我想計算兩個日期的差異,並將其舍入到四位小數。 但以下查詢給我錯誤作爲無效數字。 什麼是錯的日期差異的無效數字錯誤

SELECT ROUND((TO_DATE(to_char('26-02-2016 12:44:00','DD/MM/YY HH24:MI'),'DD/MM/YY HH24:MI') - TO_DATE(to_char('26/02/2016 12:38','DD/MM/YY HH24:MI'),'DD/MM/YY HH24:MI')), 4) 
from dual; 

回答

0

不要在一個字符串(就像你不應該叫約會to_date)調用to_char。只需撥打to_date即可將字符串轉換爲日期。您的格式掩碼也需要匹配字符串 - 您使用的是4位數字年,因此在格式掩碼中使用YYYY,並且您要麼從第一個字符串中刪除秒,要麼將秒添加到格式掩碼。

SELECT ROUND(to_date('26-02-2016 12:44','DD-MM-YYYY HH24:MI') - 
       to_date('26/02/2016 12:38','DD/MM/YYYY HH24:MI'), 
       4) 
    FROM dual