Oracle_SQL部分_時間轉換(案例一)
Oracle_SQL 部分 _ 時間轉換 ( 案例一 )
問題:
同事反饋 XXX 系統裡記錄的耗時為字元型別,通過 execl 不方便計算各個耗時統計,諮詢我是否有好的方法;
思路:
資料帶有天、小時、分,字元型別無法直接計算,可以通過 oracle 資料庫將天、小時、分鐘資料單獨拆分出來,即把天和小時都轉換成分鐘,最終耗時欄位只有分鐘,方便後期運算;
步驟如下:
1 將 exec 資料匯入到 Oracle 資料庫裡;
2 查詢資料
select 流程最長耗時 from 流程監控 ;
3 通過 substr 擷取字串,再加上 instr 獲取位置,可以實現將天、小時、分拆分出來;
--- 天
select 流程最長耗時 , nvl ( substr ( 流程最長耗時 , 1 , instr ( 流程最長耗時 , ' 天' , - 1 ) - 1 ),0 )天 from 流程監控 ;
--- 小時
select
流程最長耗時 ,
substr ( 流程最長耗時 , instr ( 流程最長耗時 , ' 天' ) + 1 , instr ( 流程最長耗時 , ' 小時' ) - instr ( 流程最長耗時 , ' 天' ) - 1 ) 小時
from
流程監控 ;
--- 分鐘
select
流程最長耗時 ,
substr ( 流程最長耗時 , instr ( 流程最長耗時 , ' 小時' ) + 2 , instr ( 流程最長耗時 , ' 分' ) - instr ( 流程最長耗時 , ' 小時' ) - 2 ) 分鐘
from
流程監控 ;
4 將天、小時轉換成分鐘,並求出總分鐘數
select
流程最長耗時 ,
nvl ( substr ( 流程最長耗時 , 1 , instr ( 流程最長耗時 , '天' , - 1 ) - 1 ), ) * 1440 + substr ( 流程最長耗時 , instr ( 流程最長耗時 , '天' ) + 1 , instr ( 流程最長耗時 , '小時' ) - instr ( 流程最長耗時 , '天' ) - 1 )* 60 + substr ( 流程最長耗時 , instr ( 流程最長耗時 , '小時' ) + 2 , instr ( 流程最長耗時 , '分' ) - instr ( 流程最長耗時 , '小時' ) - 2 )
from
流程監控 ;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29785807/viewspace-2286780/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 時間轉換
- 時間轉換成時間戳時間戳
- C 時間轉換時間戳時間戳
- 時間轉換,記錄一下
- C 時間戳轉換成時間時間戳
- 時間日期字串轉換為時間物件字串物件
- utc時間轉換成標準時間
- Excel中時間戳轉換時間Excel時間戳
- [時間格式的轉換]
- Java之時間轉換Java
- java時間的轉換Java
- 如何將時間字串轉換為時間物件字串物件
- javascript將時間物件轉換為時間戳JavaScript物件時間戳
- Oracle資料庫的SCN轉換成時間和時間轉換成SCNOracle資料庫
- oracle時間間隔轉換函式Oracle函式
- 時間戳與時間字串的多時區轉換時間戳字串
- JavaScript 轉換成UTC時間JavaScript
- JavaScript 時間日期格式轉換JavaScript
- Mysql 查詢時間轉換MySql
- javascript時間戳和時間格式的相互轉換JavaScript時間戳
- python中的時間轉換,秒級時間戳轉string,string轉時間Python時間戳
- Perl中本地時間和UNIX時間戳間相互轉換時間戳
- mysql時間與字串之間相互轉換MySql字串
- mysql時間和日期轉換的一些例子MySql
- Python秒轉換成時間(時分秒)Python
- 將時間戳轉換為時間例項程式碼時間戳
- UTC格式時間轉換為當地時間程式碼
- js將時間日期物件轉換為時間日期字元JS物件字元
- 本地時間與UTC(世界協調時間)的轉換
- JavaScript 時間日期轉換成中文JavaScript
- Timestamp-時間戳轉換時間戳
- JavaScript 時間轉換為UTC格式JavaScript
- Goland 時間轉換的那些事GoLand
- 轉換時間戳的函式時間戳函式
- 時間型別及格式轉換型別
- PHP-日期時間的轉換PHP
- 時間戳格式化轉換時間戳
- SCN 時間戳的相互轉換時間戳