oracle 獲取最近的整點 半點時間

2021-06-18 07:31:37 字數 480 閱讀 2656

最近需要取乙個時間,就是最近的半小時整點時間,比如12點,12點半等。

第一種寫法

select trunc(sysdate, 'hh24') + decode(sign(trunc(sysdate, 'mi') - trunc(sysdate, 'hh24') - 1/48), 1, 1/48, 0) t from dual;
第二種寫法

select trunc(sysdate, 'hh24') + decode(sign(to_number(to_char(sysdate, 'mi')) - 30), 1, 1/48, 0) t from dual;
這兩種方法用迴圈50w次測時間差別不大。

這裡直接用sign取正負,再用decode編碼得到是否需要加半小時時間。第一種寫法是時間加減,第二種寫法是取得分鐘數轉整數再做減法。

自己記錄一下,就是不知道有沒有其他好的寫法。

Oracle 生成未來三天的整點時間

需求 x座標軸時間都為整點時間,展示未來三天內的 x軸展示未來三天的整點時間 每3個小時乙個刻度,橫座標共計24個刻度 select sysdate from dualselect to number rownum 1 as rn,sysdate from dual connect by rownu...

利用google天氣api獲取最近的天氣

weather dim url,xml,xmldom,oitem,link,title,dateandtime,ncontent url ig api?hl zh cn weather seoul microsoft.xmlhttp物件,能夠完成從資料報到request物件的轉換以及傳送任務 利用m...

mysql獲取最近一天的資料

獲取從昨天到現在的資料,你可能習慣性的這麼寫了 select from user where date curdate 1事實上這樣寫是不對也不規範的,mysql官網也沒有說日期可以直接加減。我們應該用date sub 函式來實現這個功能 select from user where date da...