이러한 단계에서는 Mapping 노드에서 선택한 행 수를 제한하는 대등한 메소드를 보여줍니다.
$db:select_1.BROKER50.JDOE.RESOLVEASSESSOR.ASSESSORTYPE = 'WBI' or $db:select_1.BROKER50.JDOE. RESOLVEASSESSOR.ASSESSORTYPE = $source/tns:msg_tagIA81CONF/AssessorType
$db:select 입력 항목이 규정된 모든 행을 검색하므로 둘 이상의 행이 검색될 가능성이 있습니다. 기본적으로, 선택사항은 반복으로 처리되며, 이는 스프레드시트 분할창의 $db:select 아래에 ‘for’ 행으로 표시됩니다.
$db:select를 구성한 다음 소스 분할창에서 데이터베이스 열을 대상 분할창의 메시지 요소로 끌어 놓아 데이터베이스에서 대상 메시지를 채우십시오. 맵핑은 소스 분할창의 데이터베이스 열과 대상 분할창의 요소 사이 선으로 표시됩니다. Xpath 형식으로 된 이 맵의 입력 항목도 스프레드시트 분할창에 표시됩니다. 맵핑된 오브젝트 옆의 소스 및 대상 분할창에 삼각형 아이콘이 표시됩니다.
$db:select 항목에는 선택 결과 세트를 대상으로 반복되는 'for' 행이 디폴트로 수반됩니다. 맵핑에서 'for' 행의 위치가 올바른지 확인하십시오. 맵의 작동은 스프레드시트 분할창에서 'for' 행의 위치에 의해 결정됩니다. 예를 들어 $db:select 명령문의 결과가 데이터베이스의 5개 행과 부합하고 'for' 행이 스프레드시트 분할창에서 $target 항목 위에 위치하고 있으면 맵핑 노드에 의해 5개의 완전한 메시지가 출력됩니다. 만약 'for' 행의 위치가 메시지 본문 내에 있으면 하나의 메시지가 생성되는데 메시지 본문에는 5개의 반복되는 요소가 있습니다.
맵핑에는 $db:select 항목과 연결되어 있으며 단일 데이터베이스 선택을 수행하고 결과를 대상으로 여러번 반복하는 여러 'for' 행이 포함될 수 있습니다. 예를 들어 개별 'for' 행이 'condition' 또는 'else'와 함께 사용되는 조건부 맵핑에서 다중 'for' 행이 사용될 수 있습니다.
예: fn:sum 또는 fn:count
데이터베이스 테이블 조인
Table Column Row 1 Row 2 Row 3 Row 4 ORDER PRODUCT_ID 456 456 345 123 QUANTITY 100 200 300 400 PRODUCT PART_NUMBER 123 456 789 012 PART_NAME pen pencil paperclip glue PRICE 0.25 0.15 0.02 0.99
$db:select.MY_DB.SCHEMA1.ORDER.PRODUCT_ID=$db:select.MY_DB.SCHEMA2.PRODUCRT.PART_NUMBER
Row 1 Row 2 Row 3 PRODUCT_ID 456 456 123 QUANTITY 100 200 400 PART_NUMBER 456 456 123 PART_NAME pencil pencil pen PRICE 0.15 0.15 0.25단일 테이블로부터 얻어진 결과를 대상으로 반복하듯이 'for' 행을 사용하여 결과 세트를 대상으로 반복할 수 있습니다.