1. nvl( ) 函數(shù)
從兩個(gè)表達(dá)式返回一個(gè)非 null 值。
語(yǔ)法
NVL(eExpression1, eExpression2)
參數(shù)
eExpression1, eExpression2
如果 eExpression1 的計(jì)算結(jié)果為 null 值,則 NVL( ) 返回 eExpression2。如果 eExpression1 的計(jì)算結(jié)果不是 null 值,則返回 eExpression1。eExpression1 和 eExpression2 可以是任意一種數(shù)據(jù)類(lèi)型。如果 eExpression1 與 eExpression2 的結(jié)果皆為 null 值,則 NVL( ) 返回 .NULL.。
返回值類(lèi)型
字符型、日期型、日期時(shí)間型、數(shù)值型、貨幣型、邏輯型或 null 值
說(shuō)明
在不支持 null 值或 null 值無(wú)關(guān)緊要的情況下,可以使用 NVL( ) 來(lái)移去計(jì)算或操作中的 null 值。
select nvl(a.name,'空得') as name from student a join school b on a.ID=b.ID
注意:兩個(gè)參數(shù)得類(lèi)型要匹配
2.TO_CHAR(date,'format')
SQL> select to_char(sysdate,'yyyy/mm/dd hh24:mi:ss') from dual;
TO_CHAR(SYSDATE,'YY
-------------------
2004/05/09 21:14:41
select TO_CHAR(1,'FM09') from dual result: 0
3.Oracle函數(shù)之substr
substr函數(shù)有三個(gè)參數(shù),允許你將目標(biāo)字符串的一部份輸出,
第一個(gè)參數(shù)為目標(biāo)字符串,
第二個(gè)字符串是將要輸出的子串的起點(diǎn),
第三個(gè)參數(shù)是將要輸出的子串的長(zhǎng)度。
例子1:
substr('ABCDEFG', 2, 3) = 'BCD'
如果第二個(gè)參數(shù)為負(fù)數(shù),那么將會(huì)從源串的尾部開(kāi)始向前定位至負(fù)數(shù)的絕對(duì)值的位置。
例子2:
substr('ABCDEFG', -2) = 'FG'
substr('ABCDEFG', -4) = 'DEFG'
4.Oracle 函數(shù)之round
描述 : 傳回一個(gè)數(shù)值,該數(shù)值是按照指定的小數(shù)位元數(shù)進(jìn)行四舍五入運(yùn)算的結(jié)果。
SELECT ROUND( number, [ decimal_places ] ) FROM DUAL
參數(shù):
number : 欲處理之?dāng)?shù)值
decimal_places : 四舍五入 , 小數(shù)取幾位 ( 預(yù)設(shè)為 0 )
Sample :
select round(123.456, 0) from dual; 回傳 123
select round(123.456, 1) from dual; 回傳 123.5
select round(123.456, 2) from dual; 回傳 123.46
不過(guò)最大長(zhǎng)度不會(huì)超過(guò)16位
SELECT ROUND(112211111111263.451,6) FROM DUAL; 回傳112211111111263