다음을 통해 공유


ColumnNames 및 Column 함수

적용 대상: 캔버스 앱 모델 기반 앱 Power Platform CLI

형식화되지 않은 개체에서 열 이름과 값을 검색합니다.

설명

ColumnNames 함수는 형식화되지 않은 레코드에서 모든 열의 이름을 반환하고 해당 레코드의 모든 이름이 포함된 테이블을 반환합니다.

Column 함수는 주어진 열 이름을 가진 형식화되지 않은 레코드에서 속성 값을 반환합니다. 값은 형식화되지 않은 개체로 반환됩니다.

ColumnNames 및 Column 함수는 형식화되지 않은 개체가 레코드를 나타내지 않는 경우(즉, 테이블이나 스칼라 또는 기본 값을 나타내는 경우) 오류를 반환합니다.

구문

열 이름( 유형이 지정되지 않은 레코드 )

( 유형화되지 않은 레코드, 열 이름 )

  • UntypedRecord – 필수. 레코드를 나타내는 형식화되지 않은 개체입니다.
  • ColumnName - 필수. 주어진 레코드에서 검색할 열의 이름입니다.

필드 값 액세스

JsonString이라는 변수에 다음 JSON 문자열이 있는 경우

{ "name": "Seattle", "population": 737000 }
  1. 다음 수식은 "name", "population" 값을 포함하는 Value 열이 있는 단일 열 테이블을 반환합니다.

    ColumnNames( ParseJSON( JsonString ) )
    
  2. 다음 수식은 숫자 737000을 반환합니다.

    Value( Column( ParseJSON( JsonString ), "population" ) )
    

    2.1. 이는 형식화되지 않은 레코드에 대한 . 연산자와 유사하지만 열 이름을 미리 알 필요는 없습니다.

  3. 다음 수식은 텍스트 값 "name: Seattle, population: 737000"을 반환합니다.

    With(
        { untyped: ParseJSON( JsonString ) },
        Concat(
            ColumnNames( untyped ),
            $"{Value}: {Column( untyped, Value )}",
            ", "))
    

공백

JsonString이라는 변수에 다음 JSON 문자열이 있는 경우

{ "text": "text value" , "number": 567, "empty": null }
  1. 존재하지 않는 필드에 액세스하려고 하면 Blank()가 반환됩니다. 다음 수식은 true를 반환합니다.
    IsBlank( Column( ParseJSON( JsonString ), "does not exist" ) )
    
  2. JSON null 값은 Blank()로 간주됩니다. 다음 수식은 true를 반환합니다.
    IsBlank( Column( ParseJSON( JsonString ), "empty" ) )
    

Nonrecords

레코드를 나타내지 않는 형식화되지 않은 개체를 사용하여 Column 또는 ColumnNames 함수를 호출하면 오류가 반환됩니다. 아래의 표현은 모두 잘못된 것입니다.

수식 오류 이유
열 이름(ParseJSON("[1, 2, 3]" )) 형식화되지 않은 개체는 배열을 나타냄
열(ParseJSON("23.45"), "값") 형식화되지 않은 개체는 숫자를 나타냄
열 이름(ParseJSON("""hello""")) 형식화되지 않은 개체는 텍스트를 나타냄
열(ParseJSON("{""a"":false}" ).a, "a" ) 형식화되지 않은 개체는 부울 값을 나타냄