計算出賬的上乙個入賬時間差

2021-08-20 17:43:10 字數 942 閱讀 9965

--計算各個商戶每一筆出款距離其上一筆入款的時間間隔(分鐘)

with tablea as (

select 1 id,date'2018-1-1'+1 dt,'0' off from dual union all --0代表入賬 1 代表出賬

select 1 id,date'2018-1-1'+0.5 dt,'0' off from dual union all

select 1 id,date'2018-1-1'+0.75 dt,'0' off from dual union all

select 1 id,date'2018-1-1' dt,'0' off from dual)

,tableb as (

select 1 id,date'2018-1-1'+0.85 dt,'1' off from dual union all

select 1 id,date'2018-1-1'+0.55 dt,'1' off from dual union all

select 1 id,date'2018-1-1'+0.15 dt,'1' off from dual

)select /*+ use_nl(a2,a1)*/

a2.id

,a1.dt_start_date --上一次入賬時間

-a2.dt --出賬時間

from (select t.id,t.dt dt_start_date ,nvl(lead(dt) over(partition by t.id order by t.dt),sysdate+30) dt_end_date

from tablea  t) a1 --入賬部分資料

,tableb a2  --出賬部分資料

where a1.id = a2.id

and a2.dt>= a1.dt_start_date

and a2.dt < a1.dt_end_date

如何精確計算出乙個演算法的CPU執行時間

在程式中嵌入彙編語句,直接讀出cpu的機器週期。你需要多精確?gettickcount可以到18 20ms進度 timegettime可以到1ms精度 當然這些都不是c or c 標準支援的。那麼就要祭出最牛奔的方法,直接讀取cpu開機以來執行的機器週期數,一條彙編指令 rdtsc 就是 read ...

java計算兩個時間的時間差

如果得到的時間格式是string型 資料庫儲存為varchar 的是日期時間,我們首先要講日期由string型轉為date型,如果得到的時間格式為date型別不用轉。string time1 2017 01 01 01 01 01 string time2 2017 02 02 02 02 02 d...

js 計算兩個時間的時間差

gettime 方法 方法定義 gettime 方法可返回距 1970 年 1 月 1 日之間的毫秒數。通常我們計算時間差都是通過獲取兩個時間資料,然後分別使用gettime 方法返回與固定的1970 年 1 月 1 日的時間差,通過對返回毫秒數的差,換算成時間單位,得出兩個時間的時間差。首先你會有...