ISNULL
函式會測試資料欄值是否含有空值。若為輸入資料欄參照,此函式會傳回 true
或 false
。NULL
函式會產生空值。請參閱 NULL 函式。- 空值與遺漏值不一樣。
- 如要測試是否有遺漏值,請參閱 ISMISSING 函式。
- 如要進一步瞭解空值,請參閱管理空值一文。
基本用法
delete row:ISNULL(Qty)
輸出:刪除 Qty
資料欄中的值為空值的所有資料列。
語法
delete value:ISNULL(column_string)
引數 | 是否必要? | 資料類型 | 說明 |
---|---|---|---|
column_string | 是 | 字串 | 要套用至函式的資料欄名稱或字串常值 |
如要進一步瞭解語法標準,請參閱語言文件語法附註一文。
column_string
待測試是否含有空值的資料欄名稱或字串常值。
- 如果系統找不到字串或資料欄值,則會產生空白的字串結果。
- 不支援使用多個資料欄和萬用字元。
使用須知:
是否必要? | 資料類型 | 示例值 |
---|---|---|
是 | 字串常值或資料欄參照 | myColumn |
有效的資料類型字串:
在轉換內參照資料類型時,可以使用下列字串來辨識每種類型:
附註:在 Wrangle 轉換中,值有大小寫之分。
資料類型 | 字串 |
---|---|
字串 | 'String' |
整數 | 'Integer' |
小數 | 'Float' |
布林值 | 'Bool' |
社會安全號碼 | 'SSN' |
電話號碼 | 'Phone' |
電子郵件地址 | 'Emailaddress' |
信用卡 | 'Creditcard' |
性別 | 'Gender' |
物件 | 'Map' |
陣列 | 'Array' |
IP 位址 | 'Ipaddress' |
網址 | 'Url' |
HTTP 代碼 | 'Httpcodes' |
郵遞區號 | 'Zipcode' |
狀態 | 'State' |
日期/時間 | 'Datetime' |
範例
範例 - 類型檢查函式
此範例會說明如何將各種類型檢查函式套用到您的資料。
ISVALID
- 如果輸入值符合指定的資料類型,則傳回true
。請參閱 VALID 函式。ISMISMATCHED
- 如果輸入值不符合指定的資料類型,則傳回true
。請參閱 ISMISMATCHED 函式。ISMISSING
- 如果缺少輸入值,則傳回true
。請參閱 ISMISSING 函式。ISNULL
- 如果輸入值為空值,則傳回true
。請參閱 ISNULL 函式。NULL
- 產生空值。請參閱 NULL 函式。
來源:
部分來源值應該會符合「州」和「整數」的資料類型。
State | Qty |
---|---|
CA | 10 |
OR | -10 |
WA | 2.5 |
ZZ | 15 |
ID | |
4 |
轉換:
您可以使用下列指令來測試 State 資料欄是否含有無效值:
derive type:single value: ISMISMATCHED (State, 'State')
您可以使用下列指令來測試 Qty 資料欄是否含有有效相符值:
derive type:single value: (ISVALID (Qty, 'Integer') && (Qty > 0)) as:'valid_Qty'
第一個轉換會將第 4 列和第 6 列標記為不相符。
附註:遺漏值對任何類型 (包含字串類型) 而言均為無效值。
如果資料列的 Qty
資料欄為大於零的有效整數,第二個轉換會將這些資料列全標記成有效。
下列的轉換指令會測試資料欄是否有出現遺漏值:
derive type:single value: (ISMISSING(State) || ISMISSING(Qty)) as:'missing_State_Qty'
使用 move
轉換重新整理資料欄後,資料集應會如下所示:
State | Qty | mismatched_State | valid_Qty | missing_State_Qty |
---|---|---|---|---|
CA | 10 | false | true | false |
OR | -10 | false | false | false |
WA | 2.5 | false | false | false |
ZZ | 15 | true | true | false |
ID | false | false | true | |
4 | false | true | true |
由於資料不包含空值,下列轉換會依據前述條件產生空值:
您隨後可使用 ISNULL
檢查來移除未通過上述測試的資料列:
delete row: ISNULL('status')
結果:
依據上述測試,輸出資料集會含有一個資料列:
State | Qty | mismatched_State | valid_Qty | missing_State_Qty | status |
---|---|---|---|---|---|
CA | 10 | false | true | false | ok |