闡述Oracle decode函數(shù)的用法
以下的文章主要是對(duì)Oracle decode函數(shù)的正確用法的介紹,我們大家都知道Oracle函數(shù)庫里提供了N多的實(shí)用性特別號(hào)的函數(shù),例如,nvl, sign與round等,其中我們經(jīng)常用得,功能比較大的還是decode這個(gè)函數(shù)。這個(gè)函數(shù)的用法如下:
decode(表達(dá)式,條件1,結(jié)果1,條件2,結(jié)果2,...)中間有幾個(gè)條件與結(jié)果根據(jù)個(gè)人而定,如
decode(sign(100-20),1,20,-1,100)意思是說當(dāng)(100-20)大于零時(shí),結(jié)果為20,而當(dāng)(100-20)小于零時(shí),結(jié)果為100,其中的sign只是一個(gè)判斷符號(hào)的函數(shù)
假如要對(duì)一個(gè)企業(yè)的員工進(jìn)行工資調(diào)整,對(duì)于3000塊以下的提高10%,3000塊以上的提高5%,那么如果用我們一般的做法就是對(duì)工資進(jìn)行判斷,如果大于3000,就加5%,而低于3000的就加10%。不過現(xiàn)在有了這個(gè)Oracle decode函數(shù),那么就可以簡(jiǎn)單的用下面的語句:
- select decode(sign(salary-3000),1,salary*1.1,-1,salary*1.05) from employee
上述的相關(guān)內(nèi)容就是對(duì)Oracle decode函數(shù)的用法的描述,希望會(huì)給你帶來一些幫助在此方面。
【編輯推薦】