QueryExpression에서 왼쪽 우선 외부 조인을 사용하여 "포함 안 할" 레코드 쿼리
게시 날짜: 2017년 1월
적용 대상: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
지난 2개월간 캠페인 활동이 없었던 모든 연락처를 찾는 것처럼 QueryExpression 클래스를 사용하여 왼쪽 우선 외부 조인을 사용하여 조인 테이블에서 필터링하는 쿼리를 수행할 수 있습니다. 이 유형의 쿼리를 사용하는 다른 일반적인 용도는 다음과 같은 서비스 케이스에서 집합에 "없는" 레코드를 찾는 것입니다.
작업이 없는 모든 잠재 고객 찾기
연락처가 없는 모든 거래처 찾기
하나 이상의 작업이 있는 모든 잠재 고객 찾기
왼쪽 우선 외부 조인은 두번째 입력으로 첫 번째 입력의 조인에 부합되는 각 행을 반환합니다. 또한 두번째 입력과 일치하는 행이 없는 첫번째 입력의 모든 행을 반환합니다. 두번째 입력에서 일치되지 않는 행은 null 값으로 반환됩니다.
entityname 특성을 조건 연산자로 사용하여 QueryExpression에서 왼쪽 우선 외부 조인을 수행할 수 있습니다.entityname 특성은 조건, 필터 및 중첩 필터에서 유효합니다.
별칭을 사용하여 작업이 없는 모든 잠재 고객 찾기
다음 예제에서는 이 쿼리를 구성하는 방법을 보여 줍니다.
QueryExpression qx = new QueryExpression("lead");
qx.ColumnSet.AddColumn("subject");
LinkEntity link = qx.AddLink("task", "leadid", "regardingobjectid", JoinOperator.LeftOuter);
link.Columns.AddColumn("subject");
link.EntityAlias = "tsk";
qx.Criteria = new FilterExpression();
qx.Criteria.AddCondition("tsk", "activityid", ConditionOperator.Null);
다음 SQL과 동일합니다.
SELECT lead.FullName
FROM Leads as lead
LEFT OUTER JOIN Tasks as ab
ON (lead.leadId = ab.RegardingObjectId)
WHERE ab.RegardingObjectId is null
참고 항목
QueryExpression을 사용하여 쿼리 작성
null 값 테스트
QueryExpression 클래스 사용
QueryByAttribute 클래스 사용
Microsoft Dynamics 365
© 2017 Microsoft. All rights reserved. 저작권 정보