首頁 > 資料庫 > Oracle > oracle中nvl函數的用法是什麼

oracle中nvl函數的用法是什麼

WBOY
發布: 2022-01-21 11:24:05
原創
61809 人瀏覽過

在oracle中,nvl()函數用於從兩個表達式傳回一個非null值,語法為「nvl(表達式1,表達式2)」;若表達式1的計算結果為null值,則函數傳回表達式2的結果,若表達式1的計算結果不是null值,則傳回表達式1的結果。

oracle中nvl函數的用法是什麼

本教學操作環境:Windows10系統、Oracle 11g版、Dell G3電腦。

oracle中nvl函數的用法是什麼

Oracle的Nvl函數

nvl( ) 函數

從兩個表達式傳回一個非null 值。

語法

NVL(eExpression1, eExpression2)
登入後複製

參數

eExpression1, eExpression2

如 果實 eExpression1 的計算結果為 null 值,則 NVL( ) 傳回 eExpression2。如果 eExpression1 的計算結果不是 null 值,則傳回 eExpression1。 eExpression1 和 eExpression2 可以是任一種資料型態。如果 eExpression1 與 eExpression2 的結果皆為 null 值,則 NVL( ) 傳回 .NULL.。

傳回值型別

字元型、日期型、日期時間型、數值型、貨幣型、邏輯型或null 值

說明

在在不支援null 值或null 值無關緊要的情況下,可以使用NVL( ) 來移去計算或操作中的null 值。

select nvl(a.name,'空得') as name from student a joinschool b on a.ID=b.ID

注意:兩個參數得型別要符合

問:什麼是NULL?

答:在我們不知道具體有什麼資料的時候,也即未知,可以用NULL,

我們稱它為空,ORACLE中,含有空值的表列長度為零。

ORACLE允許任何一種資料類型的欄位為空,除了以下兩種情況:

1、主鍵欄位(primary key),

2、定義時已經加了NOT NULL限制條件的欄位

說明:

1、等價於沒有任何值、是未知數。

2、NULL與0、空字串、空格都不同。

3、對空值做加、減、乘、除等運算操作,結果仍為空。

4、NULL的處理使用NVL函數。

5、比較時使用關鍵字用「is null」和「is not null」。

6、空值不能被索引,所以查詢時有些符合條件的資料可能查不出來,count(*)中,用nvl(列名,0)處理後再查。

7、排序時比其他資料都大(索引預設是降序排列,小→大),所以NULL值總是排在最後​​。

推薦教學:《Oracle教學

以上是oracle中nvl函數的用法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板