Model Builder의 Select Layer By Attribute에서 변수를 사용하는 방법
Types내 모델에 변수 (다중 문자열)가 있고 도구 Select Layer By Attribute및 where 절과 함께 변수를 사용하고 싶습니다 TYPE IN (%Types%).
그러나 %Types%세미콜론 ( ;)으로 구분 된 문자열입니다. 예를 들어 'Type1;Type2'필요한 것은 문자열 목록입니다 (여러 값을 가진 변수라는 점을 고려하면 예상했을 것입니다).
ArcGIS Pro에는 Types이 사용 사례에 변수를 사용하는 내장 함수가 있습니까? 아니면이를 수행하기 위해 Python 스크립트를 작성해야합니까?
ArcGIS Pro 도움말 페이지의 SQL 참조에서 아무것도 찾지 못했습니다. https://pro.arcgis.com/en/pro-app/help/mapping/navigation/sql-reference-for-elements-used-in-query-expressions.htm
답변
약간의 Python을 작성해야합니다.
ModelBuilder 의 유틸리티 메뉴에서 값 계산 을 추가 할 수 있습니다 .
전체 함수를 작성할 필요는 없습니다. 다음을 표현식으로 제공 할 수 있습니다. str(tuple(%Types%.split(";")))
질문에서 언급했듯이 Types 라는 매개 변수가 있다고 가정합니다 .
입력: "foo;bar;foo2;bar2"
산출: ('foo', 'bar', 'foo2', 'bar2')
또는 입력 문자열의 일부로 ""가없는 경우 (예 :) foo;bar;foo2;bar2다음 표현식을 따옴표로 묶은 유형을 사용할 수 있습니다.str(tuple("%Types%".split(";")))