관련 테이블의 일대일 변환을 기반으로 중복 기능을 작성 하시겠습니까?


11

ID 테이블을 채우려면 관련 테이블을 사용하여 중복 피처 (이 경우 소포)를 작성해야합니다. 본질적으로 관련 소포 소유자의 관련 테이블을 사용하여 각각 관련 소 유자 테이블의 고유 ID를 가진 중복 소포를 작성해야합니다. 관련 테이블에는 이미 소포에 대한 다 대일 링크가 포함되어 있습니다. 각 소유자 레코드에 대해 중복 소포를 작성하여 소유자와 소포 사이에 일대일 관계를 적용하고 싶습니다.

ArcGIS Desktop 9.3.1을 사용하고 있습니다.


2
피처 테이블을 소유자 테이블에 조인 할 수없는 이유는 무엇입니까? 모양마다 여러 행이 계속 표시됩니다 (일대 다 관계, 소유자와 기능이므로 본질적으로 테이블 형식 데이터를 볼 때 "일대일"관계가 표시됨) .
Michael Todd

어떤 소프트웨어? 어떤 버전?
Jay Cummins

ArcGIS 9.3.1 실제로 테이블에 1 : 1이 아닌 형상을 복제하고 싶습니다.
Jodi

각 다각형은 정확히 같은 모양의 다각형을 오버레이하기 때문에 여러 모양을 가질 때 얻을 수있는 이점은 없습니다. 지도에서 지형지 물을 상징하는 것 이외의 작업을 수행하고 있습니까?
Michael Todd

1
symoblizing 기능에는 사용하지 마십시오. 중복 모양을 만들어 관련 테이블에서 지형지 물의 공간적 위치를 찾을 수있는 기능을 원합니다 (역순 또는 다 대일이므로 말하십시오). 또한 중복 된 모양을 서로 쌓아 놓으면 선택 또는 식별 도구를 사용하여 관련 테이블에서 레코드를 조회하지 않고도 모든 레코드를 캡처 할 수 있습니다.
Jodi

답변:


9

방금 우리의 소포 기능과 소유자 테이블로했습니다.

소포를 소유자에게 합류 시켰고, 조인 직후 "일치하는 레코드 만 유지"를 선택하여 ArcToolbox에서 "복사 기능"을 작성하면 소유자가있는 모든 소포가 복제됩니다.

그것은 나를 위해 일했다 .... 마침내 ...


5

ArcMap 10에서 MAKE QUERY TABLE을 사용하십시오. 먼저 테이블과 피처 클래스가 동일한 지리 데이터베이스에 있는지 확인하십시오. MAKE QUERY TABLE 도구는 피처 레이어를 생성하므로 COPY를 사용하여 영구 피처 클래스를 생성해야합니다. 그런 다음이 피쳐 클래스를 shapefile로 내보낼 수 있습니다.


테이블을 원하지 않고 다각형도 복제하려는 경우이 방법이 "올바른"방법으로 보입니다. 피처 레이어 출력을 원할 경우 피처 레이어를 먼저 추가해야하며 "layer.Shape"를 선택한 변수로 포함하는 것을 잊지 마십시오. 복사 / 내보내기하지 않으면 해당 레이어를 검토 할 수 없습니다. ... 일대 다, 테이블 대 다각형 조인을 완벽하게 처리합니다.
orh

2

비슷한 결과를 얻기 위해 SDE의 공간 뷰를 사용합니다. 우리의 경우에는 여러 소유자 (콘도, 타운 홈 등)가있는 소포가 있기 때문입니다. 우리는 카운티의 모든 부동산 소유자를 포함하는 야간에 파일을 SDE로 가져옵니다. 각 소유자는 특정 소포와 관련이있는 고유 한 ID를 갖습니다. 이 테이블과 구획 폴리곤 피쳐 클래스를 사용하여 공간 뷰를 만듭니다. 결과는 각 개별 소유자에 대해 하나의 소포가 쌓인 소포가있는 공간보기입니다. ArcMap에서이 레이어를 식별하면 모든 소유자에 대한 결과가 나타납니다. 우리는 아크 9.3.1에 있습니다. 이 계층은 세금 부서에 매우 유익했습니다.


불행히도 SDE 또는 INFO를 사용할 수 없습니다. ArcView에서 불가능하다고 생각합니까?
Jodi

ArcMap을 사용하면 SQL Server Express에 연결할 수있는 ArcSDE 라이센스가 있어야합니다. 구획 피쳐 클래스 및 소유자 테이블을 데이터베이스로 푸시하고 공간 뷰를 작성한 후 쉐이프 파일 또는 개인 / 파일 지오 데이터베이스로 다시 푸시 할 수 있어야합니다 (관계를 해제).
mwalker

2

Mads Grens의 답변은 완벽하게 작동합니다.

  1. 일치하는 레코드 만 유지 옵션을 사용하여 소유자 테이블을 소포 테이블에 조인합니다.

  2. ArcToolbox의 피처 복사 (데이터 관리 도구-> 피처)를 사용하여 소포를 새 피처 클래스에 복사합니다. 새 피쳐 클래스에는 소유자 당 한 번에 한 번씩 모든 소포가 포함됩니다. 즉, 소포에 두 명의 소유자가 있으면 소포가 새 피쳐 클래스에서 두 번 표시됩니다. 단순히 피쳐 복사 도구로 복제됩니다.

이 모든 것을 모델 빌더의 모델에 넣을 수 있습니다. 데이터 관리 도구-> 결합에서 결합 추가를 찾을 수 있습니다. 그러면 기본 데이터가 업데이트 될 때마다 모델을 실행할 수 있습니다.


우수한! 방금 귀하의 방법을 시도했으며 완벽하게 작동합니다. 왜 이것이 작동하는지 아십니까? 그러나 그것이 기쁘다. 설명을 잃어 버렸습니다. 문서화되지 않은 것처럼 작동의 논리를 이해하고 싶습니다.
브렌트 에드워즈

그냥 확인할 수 있을까요? 테이블을 '기능'에 조인하기 전에 '기능'레이어가 테이블과 관련되어야합니까? 둘 다 시도했지만 둘 다 작동하지 않습니다.
Howeitzer


0

복제하려는 소포를 선택하기 만하면 ( 'where in'절이 잘 작동 함) 선택의 새 모양 파일을 작성하십시오. 두 파일을 병합하십시오. 끝난.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.