(選自newkid每日一題)add_months、二進位制儲存、數運算

Nalternative發表於2012-02-28

 

一、add_months在月末時

看看兩者語句是否一個意思呢???

結果呢?????

select add_months(add_months(to_date('20120130','yyyymmdd'),1),1) from dual

2012-3-31 00:00:00.000

select  add_months(to_date('20120130','yyyymmdd'),2)  from dual

2012-3-30 00:00:00.000

函式執行順序是從裡到外。第一次呼叫add_months,把1月30號加上一個月會得到2月29號,即月末。第二次呼叫會得到3月的月末即3月31號。
 
 
二、二進位制
判斷一個二進位制儲存的數,右數第二位是否為1
--二進位制轉化為數值
select bin_to_num(0,0,1,0) from dual
--二進位制數右移一位,然後看最後一位是否為奇數
mod(trunc(expertise/2),2)=1
--按位與
bitand(expertise,2)=2
 
 
三、數值取捨
 
select ceil(1.4) from dual
 
select floor(1.4) from dual
 
select round(19650,-3) from dual
 
select round(12250,-3) from dual
 
select trunc(12250,-3) from dual
 
select round(12250.123456,2) from dual
 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25323853/viewspace-717319/,如需轉載,請註明出處,否則將追究法律責任。

相關文章