보고서 작성기 함수-Multilookup 함수Report Builder Functions - Multilookup Function

이름/값 쌍을 포함하는 데이터 집합에서 지정된 이름 집합과 처음 일치하는 값 집합을 반환합니다.Returns the set of first-match values for the specified set of names from a dataset that contains name/value pairs.

참고

SQL Server Data Tools의 보고서 작성기 및 보고서 디자이너에서 페이지를 매긴 보고서 정의(.rdl) 파일을 만들고 수정할 수 있습니다.You can create and modify paginated report definition (.rdl) files in Report Builder and in Report Designer in SQL Server Data Tools. 각 제작 환경에서는 보고서 및 관련 항목을 만들고, 열고, 저장할 수 있는 여러 방법을 제공합니다.Each authoring environment provides different ways to create, open, and save reports and related items.

구문Syntax


Multilookup(source_expression, destination_expression, result_expression, dataset)  

매개 변수Parameters

source_expressionsource_expression
(VariantArray) 현재 범위에서 평가되고, 조회할 키 또는 이름의 집합을 지정하는 식입니다.(VariantArray) An expression that is evaluated in the current scope and that specifies the set of names or keys to look up. 예를 들어 다중값 매개 변수의 경우 =Parameters!IDs.value입니다.For example, for a multivalue parameter, =Parameters!IDs.value.

destination_expressiondestination_expression
(Variant) 데이터 집합의 각 행에 대해 평가되고, 일치시킬 키 또는 이름을 지정하는 식입니다.(Variant) An expression that is evaluated for each row in a dataset and that specifies the name or key to match on. =Fields!ID.Value)을 입력합니다.For example, =Fields!ID.Value.

result_expressionresult_expression
(Variant) source_expression = destination_expression인 데이터 집합의 행에 대해 계산되고 검색할 값을 지정하는 식입니다.(Variant) An expression that is evaluated for the row in the dataset where source_expression = destination_expression, and that specifies the value to retrieve. =Fields!Name.Value)을 입력합니다.For example, =Fields!Name.Value.

데이터 집합(dataset)dataset
보고서의 데이터 집합 이름을 지정하는 상수입니다.A constant that specifies the name of a dataset in the report. 예를 들면 "Colors"입니다.For example, "Colors".

반환 값Return

VariantArray를 반환하거나, 일치하는 항목이 없으면 Nothing 을 반환합니다.Returns a VariantArray, or Nothing if there is no match.

주의Remarks

Multilookup 을 사용하여 일 대 일 관계가 있는 이름 값 쌍의 데이터 집합에서 값 집합을 검색할 수 있습니다.Use Multilookup to retrieve a set of values from a dataset for name-value pairs where each pair has a 1-to-1 relationship. MultiLookup 은 이름 또는 키 집합에 대해 Lookup 을 호출하는 것과 동일합니다.MultiLookup is the equivalent of calling Lookup for a set of names or keys. 예를 들어 기본 키 식별자를 기반으로 하는 다중값 매개 변수의 경우 테이블의 입력란에 있는 식에 Multilookup 을 사용하여 매개 변수 또는 테이블에 바인딩되지 않은 데이터 집합에서 연결된 값을 검색할 수 있습니다.For example, for a multivalue parameter that is based on primary key identifiers, you can use Multilookup in an expression in a text box in a table to retrieve associated values from a dataset that is not bound to the parameter or to the table.

Multilookup 은 다음을 수행합니다.Multilookup does the following:

  • 현재 범위에서 원본 식을 평가하고 변형 개체의 배열을 생성합니다.Evaluates the source expression in the current scope and generates an array of variant objects.

  • 배열의 각 개체에 대해 Lookup 함수(보고서 작성기 및 SSRS)를 호출하고 결과를 반환 배열에 추가합니다.For each object in the array, calls Lookup Function (Report Builder and SSRS) and adds the result to the return array.

  • 결과 집합을 반환합니다.Returns the set of results.

    일 대 일 관계의 이름-값 쌍을 포함하는 데이터 집합에서 지정된 이름에 대한 단일 값을 검색하려면 Lookup 함수(보고서 작성기 및 SSRS)를 사용하고,To retrieve a single value from a dataset with name-value pairs for a specified name where there is a 1-to-1 relationship, use Lookup Function (Report Builder and SSRS). 일 대 다 관계의 이름 값 쌍을 포함하는 데이터 집합에서 이름에 대한 여러 값을 검색하려면 LookupSet 함수(보고서 작성기 및 SSRS)를 사용합니다.To retrieve multiple values from a dataset with name-value pairs for a name where there is a 1-to-many relationship, use LookupSet Function (Report Builder and SSRS).

    다음과 같은 제한 사항이 있습니다.The following restrictions apply:

  • Multilookup 은 모든 필터 식이 적용된 후 평가됩니다.Multilookup is evaluated after all filter expressions are applied

  • 조회 수준이 하나만 지원됩니다.Only one level of look-up is supported. 원본, 대상 또는 결과 식에는 조회 함수에 대한 참조가 포함될 수 없습니다.A source, destination, or result expression cannot include a reference to a lookup function.

  • 원본 식과 대상 식의 데이터 형식이 같아야 합니다.Source and destination expressions must evaluate to the same data type.

  • 원본, 대상 및 결과 식에는 보고서 또는 그룹 변수에 대한 참조가 포함될 수 없습니다.Source, destination, and result expressions cannot include references to report or group variables.

  • Multilookup 은 다음 보고서 항목에 대한 식으로 사용할 수 없습니다.Multilookup cannot be used as an expression for the following report items:

    • 데이터 원본에 대한 동적 연결 문자열Dynamic connection strings for a data source.

    • 데이터 집합의 계산된 필드Calculated fields in a dataset.

    • 데이터 집합의 쿼리 매개 변수Query parameters in a dataset.

    • 데이터 집합의 필터Filters in a dataset.

    • 보고서 매개 변수Report parameters.

    • Report.Language 속성입니다.The Report.Language property.

    자세한 내용은 집계 함수 참조(보고서 작성기 및 SSRS)합계, 집계 및 기본 제공 컬렉션의 식 범위(보고서 작성기 및 SSRS)를 참조하세요.For more information, see Aggregate Functions Reference (Report Builder and SSRS) and Expression Scope for Totals, Aggregates, and Built-in Collections (Report Builder and SSRS).

예제Example

"Category"라는 데이터 집합에 CategoryList 필드가 포함되어 있다고 가정합니다. 이 필드는 쉼표로 구분된 범주 식별자 목록(예: "2, 4, 2, 1")을 포함합니다.Assume a dataset called "Category" contains the field CategoryList, which is a field that contains a comma-separated list of category identifers, for example, "2, 4, 2, 1".

CategoryNames 데이터 집합은 다음 표와 같이 범주 식별자와 범주 이름을 포함합니다.The dataset CategoryNames contains the category identifier and category name, as shown in the following table.

IDID 이름Name
1.1 AccessoriesAccessories
22 BikesBikes
33 ClothingClothing
44 ComponentsComponents

식별자 목록에 해당하는 이름을 조회하려면 Multilookup을 사용합니다.To look up the names that correspond to the list of identifiers, use Multilookup. 먼저 목록을 문자열 배열로 분할한 다음, Multilookup 을 호출하여 범주 이름을 검색하고 결과를 문자열로 연결해야 합니다.You must first split the list into a string array, call Multilookup to retrieve the category names, and concatenate the results into a string.

다음 식을 Category 데이터 집합에 바인딩된 데이터 영역의 입력란에 넣으면 "Bikes, Components, Bikes, Accessories"가 표시됩니다.The following expression, when placed in a text box in a data region bound to the Category dataset, displays "Bikes, Components, Bikes, Accessories":

=Join(MultiLookup(Split(Fields!CategoryList.Value,","),  
   Fields!CategoryID.Value,Fields!CategoryName.Value,"Category")),  
   ", ")  

예제Example

ProductColors 데이터 집합에 다음 표와 같이 색 식별자 필드 ColorID와 색 값 필드 Color가 포함되어 있다고 가정합니다.Assume a dataset ProductColors contains a color identifier field ColorID and a color value field Color, as shown in the following table.

ColorIDColorID Color
1.1 빨강Red
22 파랑Blue
33 녹색Green

다중값 매개 변수 MyColors 가 사용 가능한 값에 대한 데이터 집합에 바인딩되어 있지 않다고 가정합니다.Assume the multivalue parameter MyColors is not bound to a dataset for its available values. 이 매개 변수의 기본값은 2와 3으로 설정되어 있습니다.The default values for the parameter are set to 2 and 3. 다음 식을 테이블의 입력란에 넣으면 매개 변수에 대해 선택된 여러 값을 쉼표로 구분된 목록으로 연결하고 "Blue, Green"이 표시됩니다.The following expression, when placed in a text box in a table, concatenates the multiple selected values for the parameter into a comma-separated list and displays "Blue, Green".

=Join(MultiLookup(Parameters!MyColors.Value,Fields!ColorID.Value,Fields!Color.Value,"ProductColors"),", ")  

관련 항목:See Also

보고서 (에 사용 되는 식 보고서 작성기 및 SSRS ) Expression Uses in Reports (Report Builder and SSRS)
식 예 ( 보고서 작성기 및 SSRS ) Expression Examples (Report Builder and SSRS)
식 (의 데이터 형식 보고서 작성기 및 SSRS ) Data Types in Expressions (Report Builder and SSRS)
합계, 집계 및 기본 제공 컬렉션 (에 대 한 식 범위 보고서 작성기 및 SSRS )Expression Scope for Totals, Aggregates, and Built-in Collections (Report Builder and SSRS)