nvl函數(shù)與nvl2 oracle函數(shù)中nvl2()的用法?
oracle函數(shù)中nvl2()的用法?NVL(expr1,expr2)->expr1為空,返回expr2;不為空,返回expr1。請(qǐng)注意,這兩種類型應(yīng)該是一致的,nvl2(expr1,expr2,
oracle函數(shù)中nvl2()的用法?
NVL(expr1,expr2)->expr1為空,返回expr2;不為空,返回expr1。請(qǐng)注意,這兩種類型應(yīng)該是一致的,nvl2(expr1,expr2,expr3)->expr1不為null,返回expr2;null,返回expr3。如果expr2和expr3的類型不同,expr3將轉(zhuǎn)換為expr2的類型,nullif(expr1,expr2)—>,equal return null,unqual return expr1
nvl2(expr1,expr2,expr3)函數(shù):如果參數(shù)表達(dá)式expr1的值為null,nvl2()函數(shù)將返回參數(shù)表達(dá)式expr3的值;如果參數(shù)表達(dá)式expr1的值不為空,則函數(shù)nvl2()返回參數(shù)表達(dá)式expr2的值。NVL(string1,replace)函數(shù):如果string1為null,NVL函數(shù)返回replace;如果兩個(gè)參數(shù)都為null,則返回null。
oracle的nvl和nvl2是什么函數(shù),兩者區(qū)別是什么呢?
1. NVL(Exp1,exp2)的函數(shù)是,如果Exp1為空,則返回exp2表達(dá)式;如果Exp1不為空,則返回Exp1表達(dá)式。2NVL函數(shù)與NVL函數(shù)具有相同的數(shù)據(jù)類型。如下圖所示,因?yàn)閏omm是數(shù)字類型,所以第二個(gè)參數(shù)不能是任何其他類型。三。Nvl2函數(shù)語法Nvl2(Exp1,exp2,EXP3)此函數(shù)需要三個(gè)參數(shù)。如果Exp1為空,則返回EXP3;如果Exp1不為空,則返回exp2。4但是,需要注意的是,nvl2函數(shù)中exp2和EXP3的數(shù)據(jù)類型應(yīng)該相同,否則會(huì)報(bào)告錯(cuò)誤。5但是,nvl2函數(shù)的另一點(diǎn)需要注意,即當(dāng)exp2和EXP3的數(shù)據(jù)類型不同時(shí),EXP3參數(shù)的數(shù)據(jù)類型將轉(zhuǎn)換為exp2數(shù)據(jù)類型,但前提是可以轉(zhuǎn)換。如果無法轉(zhuǎn)換,將報(bào)告錯(cuò)誤。6Nullif函數(shù)語法:Nullif(Exp1,exp2)其函數(shù)是在Exp1和exp2的值相等時(shí)返回null,如果不相等則返回Exp1。同樣,這兩個(gè)參數(shù)的數(shù)據(jù)類型應(yīng)該相同。