2017-05-17 3 views
0

ProductCategory 테이블에서 루프의 목적을 이해하고 싶습니다. AdventureWorks는 Microsoft에서 제공 한 예제 데이터베이스 here입니다. AdventureWorks의 ProductCategory 테이블에 루프가있는 이유는 무엇입니까?SQL 스키마 분석 : AdventureWorks의 ProductCategory에서 루프의 목적은 무엇입니까?

도 루프가

enter image description here이 이

도 (지금의 기준도 불리는, DB 마주 의해 생성 Hirarchy 모드에서) 루프가 켜져

오른쪽에 마이크로 소프트 SQL Server Management Studio를
에서 오른쪽 아래 내가 그 t을 가정 할

enter image description here

답변

1

제품 카테고리가 계층 적임을 나타 내기 위해 사이클이 존재합니다. 당신이 테이블 정의에서 보면, 일종의이 우리를 팁을 다음과 같은 두 개의 필드가 표시됩니다 만약 내가 제대로 이해하고

ProductCategoryID 
ParentProductCateogoryID 

이, 선이 일반적으로 부모 - 외래 키 관계를 나타냅니다. 이 관계는 또한 우리가 수있는 장소를 나타냅니다 두 테이블을 함께. ProductCategory 테이블의 경우 실제로 자체 조인을 사용하여이 테이블을 자체에 조인 할 수 있습니다. 이것이 우리가 카테고리 계층 구조를 쿼리하는 방법입니다.

+0

계층 적 범주는 각 범주가 ProductCategoryID 및 ParentProductCategoryID와 같이 각 열 범주 내에서 계층 적이라는 것을 의미합니까? 또는 ProductCategoryID에 대한 ParentProductCategoryID의 계층 구조 만 의미합니까? 아니면 조합의 둘 또는 하나 일 수 있습니까? 자체 참조 루프는 또한 테이블에 대해 다른 것을 의미 할 수 있습니까? – hhh

+1

질문을 이해할 수 없습니다. 앞서 말했듯이, 제품 범주가 계층 적이며 제품 계층 구조를 얻기 위해'ProductCategory' 테이블을 자체 조인 할 수 있음을 의미한다고 생각합니다. –

관련 문제