ColumnNames 和 Column 函數
適用於: 畫布應用程式
模型導向應用程式
Power Platform CLI
從非類型化物件擷取資料行名稱和值。
描述
ColumnNames 函數傳回非類型化記錄中所有欄位的名稱,並傳回包含該記錄中所有名稱的資料表。
Column 函數從具有指定資料行名稱的非類型化記錄傳回屬性值。 該值會以非類型化物件傳回。
如果非類型化物件不表示記錄 (即如果它表示資料表、標量或原始值),則 ColumnNames 和 Column 函數將傳回錯誤。
語法
ColumnNames( UntypedRecord )
- UntypedRecord – 必要項目。 代表記錄的非類型化物件。
Column( UntypedRecord, ColumnName )
- UntypedRecord – 必要項目。 代表記錄的非類型化物件。
- ColumnName - 必要項目。 要從指定記錄中擷取之資料行的名稱。
範例
存取欄位值
指定名為 JsonString
變數中的以下 JSON 字串
{ "name": "Seattle", "population": 737000 }
以下公式會傳回單一資料行表,其中
Value
資料行包含以下值:「名稱」、「人口」:ColumnNames( ParseJSON( JsonString ) )
以下公式會傳回數字
737000
:Value( Column( ParseJSON( JsonString ), "population" ) )
2.1. 請注意,這類似於非類型化記錄的
.
運算符,但不必事先知道資料行名稱。以下公式傳回文字值
"name: Seattle, population: 737000"
:With( { untyped: ParseJSON( JsonString ) }, Concat( ColumnNames( untyped ), $"{Value}: {Column( untyped, Value )}", ", "))
空白
指定名為 JsonString
變數中的以下 JSON 字串
{ "text": "text value" , "number": 567, "empty": null }
- 嘗試存取不存在的欄位將傳回 Blank()。 下列公式會傳回
true
:IsBlank( Column( ParseJSON( JsonString ), "does not exist" ) )
- JSON
null
值視為 Blank()。 下列公式會傳回true
:IsBlank( Column( ParseJSON( JsonString ), "empty" ) )
非記錄
使用不代表記錄的非類型化物件呼叫 Column 或 ColumnNames 函數會傳回錯誤。 以下所有運算式都是錯誤的:
公式 | 錯誤的原因 |
---|---|
ColumnNames( ParseJSON ( "[1, 2, 3]" ) ) | 非類型化物件表示陣列 |
Column( ParseJSON ( "23.45" ), "Value" ) | 非類型化物件表示數字 |
ColumnNames( ParseJSON ( """hello""" ) ) | 非類型化物件表示文字 |
Column( ParseJSON ( "{""a"":false}" ).a, "a" ) | 非類型化物件表示布林值 |
意見反映
https://aka.ms/ContentUserFeedback。
即將推出:我們會在 2024 年淘汰 GitHub 問題,並以全新的意見反應系統取代並作為內容意見反應的渠道。 如需更多資訊,請參閱:提交及檢視以下的意見反映: