如何將EVENT_DATE_B - EVENT_DATE_A
這是一個天數轉換爲HH:MM
格式的字符串?在Oracle中將時差轉換爲給定格式
7
A
回答
4
如果日期是區別僅僅在於時間的一部分,你可以使用第二間隔一天。例如:
SQL> select (to_date('25.12.12 15:37:32', 'DD.MM.YY HH24:MI:SS')
2 - to_date('25.12.12 12:45:45', 'DD.MM.YY HH24:MI:SS')) day(0) to second(0) as Time
3 from dual
4 ;
TIME
-------------
+0 02:51:47
但顯然它並不總是如此。所以,你可以寫一個很長的查詢,計算的時間不同的部分,但我想我會用這個簡單的功能去:
SQL> create or replace function DaysToTime(p_val in number)
2 return varchar2
3 is
4 l_hours number;
5 l_minutes number;
6 l_seconds number;
7 begin
8 l_Hours := 24 * p_val;
9 l_minutes := (l_hours - trunc(l_hours)) * 60;
10 l_seconds := (l_minutes - trunc(l_minutes)) * 60;
11 return to_char(trunc(l_hours), 'fm09') ||':'||
12 to_char(trunc(l_minutes), 'fm09')||':'||
13 to_char(trunc(l_seconds), 'fm09');
14 end;
15/
Function created
而現在的查詢是:
SQL> select DaysToTime(to_date('25.12.12 15:37:32', 'DD.MM.YY HH24:MI:SS')
2 - to_date('25.12.12 12:45:45', 'DD.MM.YY HH24:MI:SS')) as Time
3 from dual
4 ;
TIME
----------
02:51:47
1
select 24 * (EVENT_DATE_B - EVENT_DATE_A) || ':' || '00'
from your_table
4
另一種方法(一個查詢可以在不同的日子):
with tt as (
select numToDsinterval((EVENT_DATE_B - EVENT_DATE_A), 'DAY') dsint
from t)
select (extract(day from dsint)*24)+extract(hour from dsint) ||
':' ||extract(minute from dsint)
from tt
+0
+1」的「00」當然。由於某種原因,我沒有想過'NumToDSInterval' :) –
1
我認爲你需要找出date1和date2之間的天數,然後從date2中減去這個差值,並將最終日期轉換爲你的格式。複製/粘貼和查看輸出:
Select date2, days_between, to_char(date2-days_between, 'mm-dd-yyyy hh24:mi:ss') end_date
From
(
Select sysdate date2
, trunc(sysdate)-to_date('20-DEC-2012') days_between --'20-DEC' is start_date
From dual
)
/
相關問題
- 1. Oracle將RAW轉換爲日期格式
- 2. 如何在oracle中將日期轉換爲格式「dd/mm」?
- 3. 在Java Spring/Oracle中將時間戳轉換爲日期時間格式
- 4. 將長時差轉換爲格式HH:mm [Java]
- 5. 將IST日期格式轉換爲Oracle sysdate格式
- 6. Oracle sql將時間戳轉換爲格式
- 7. 如何將Node.js日期格式轉換爲oracle日期時間格式
- 8. Java - 將符合xs:date格式的字符串轉換爲Oracle時間戳格式
- 9. 在Oracle中轉換日期格式
- 10. 將給定時間轉換爲毫秒
- 11. 如何將給定的數字轉換爲VBA中的時間格式HH:MM:SS?
- 12. 如何在Oracle中將字符串轉換爲timestap時保留軍事格式?
- 13. 如何將日期時間轉換爲oracle的日期時間格式在php
- 14. 轉換爲varchar在MySQL中給定的日期格式
- 15. 將特定格式轉換爲NSDate
- 16. 將日期轉換爲特定格式
- 17. 將數據從JSON轉換爲給定的格式
- 18. 將給定日期轉換爲通用日期格式?
- 19. 將給定格式的字符串轉換爲json
- 20. 將輸入日期轉換爲給定格式
- 21. 如何將給定格式的xml字符串轉換爲json?
- 22. 將特殊字符轉換爲Oracle中的RAW格式
- 23. 將TZ字符串格式的TimeStamp轉換爲Oracle中的TimeStamp
- 24. 如何將毫秒轉換爲Oracle中的hh mm ss格式
- 25. 將字符串轉換爲oracle中的格式編號
- 26. 將整數轉換爲時間格式
- 27. 將時間戳轉換爲nsdate格式
- 28. jquery將hmm格式轉換爲小時
- 29. 將秒轉換爲時間格式
- 30. 將整數轉換爲時間格式
'EVENT_DATE_B - EVENT_DATE_A'可能不是整數 – turbanoff
這無益於像'選擇24 *(TO_DATE('25 .12.12 15時37分32' 秒,「 DD.MM.YY HH24:MI:SS') - to_date('25 .12.12 12:45:45','DD.MM.YY HH24:MI:SS'))|| ':'||雙「 – lexeme