2017-09-20 2 views
3

저는 관계 대수학의 총괄자이며 카티 젼 제품의 작동 방식을 완전히 이해하지 못합니다.관계형 대수 직교 제품

두 테이블에 공통 속성이있는 경우 데카르트 제품에서 어떤 일이 발생하는지 알고 싶습니다. 두 테이블 모두 공통된 속성이없는 경우를 이해하는 데는 아무런 문제가 없습니다.

예를 들어 내가 직접 만든 예를 이해하려고 노력했습니다.

T1       T2 
----------     ----------- 
A B C     A B D 
1 4 7     1 4 8 
2 5 3     2 9 5 
4 7 1     7 3 2 

나는 열 A와 B에게 일어날 것을 T1 A=1 , B=4 , C=7의 첫 번째 줄과 T2 A=2 ,B=9 ,C=5의 두 번째 줄의 연결 한 선을 작성하고자 할 때, T1의 X의 T2를 수행하려는 경우 ?

T1 x T2의 결과를 보여 주면 정말 유용 할 것입니다!

+0

관계형 대수 변형에 대한 참조를주십시오. 많은 대수 (algebras)는 중복 된 이름을 가질 수있는 정렬 된 속성과 관계가 있습니다. 그래서 그들은 어떤 두 관계의 산물을 계산할 수 있습니다. – philipxy

+0

[열이 동일한 테이블의 데카르트 제품]의 중복 가능성 있음 (https://stackoverflow.com/questions/33942237/cartesian-products-of-tables-that-contains-same-columns) – philipxy

답변

3

: 의견 섹션에서 논의 된대로. 이 질문에 대한 적절한 이해를 위해이 대답을 편집하고 있습니다. 이것이 가능한 중복이기 때문에

,이 링크를 참조 : Cartesian products of tables that contains same columns

첫째, 당신이 사용하고있는 대수에 따라 달라집니다. 어떤 경우에는 교차 결합과 같은 공통 속성을 가진 테이블간에 데카르트 생성을 수행 할 수 있으며 다른 대수에서는 데카르트 제품을 사용할 수 없으므로 특성의 이름을 바꾸어야합니다.

PS : What is the difference between Cartesian product and cross join?

:

T1      T2    T1 X T2 
----------    -----------  = ---------------------------- 
A B C    A B D   T1.A T1.B T1.C T2.A T2.B T2.D 
1 4 7    1 4 8   1  4 7 1 4 8 
2 5 3    2 9 5   1  4 7 2 9 5 
4 7 1    7 3 2   1  4 7 7 3 2 
               2  5 3 1 4 8 
               2  5 3 2 9 5 
               2  5 3 7 3 2 
               4  7 1 1 4 8 
               4  7 1 2 9 5 
               4  7 1 7 3 2 

링크를 참조 : 크로스가 카티 제품 만 가입 할 수없는 조건과 유사하다로 합류 조회, 귀하의 예제 테이블의 조인 십자가의 예상 결과를 볼 수

또한이 책을 확인하고 직접 시험해 보시기 바랍니다!

휴식 - 관계 대수 계산기 http://dbis-uibk.github.io/relax/index.htm

+1

예를 들어 보겠습니다. 당신이 나에게 준 계산기는'join으로 인해 고유하지 않은 컬럼 이름이 생길 것입니다; 다음 열은 두 관계에 표시됩니다 : A, B'. 그래서 나는 A와 B의 이름을 바꾸지 않고 데카르트 제품을 만들 수 없다고 결론을 내려야할까요? – Peni

+0

오 스냅! 나는 당신의 질문을 오해했습니다. 내 대답을 편집 할게. 그러나 이미 그것을 여기에서 정정하십시오. 직교 좌표 곱은 자연 조인의 경우이며 조인 된 관계에는 공통된 속성 이름이 없습니다. 크로스 가입에 대해 내가 오해 한 것은 올바른 결과를 줄 것입니다. 그리고 그렇습니다. 결론을 내려야합니다. –

+0

Errr 나는 결함이 내 제품이라고 생각하지 않는다. 제품과 데카르트 제품 간 차이점을 알지 못했다! 그러나 나는 크로스 제품이라고 생각했는데, 그것은 내가 계산기에서 사용했던 것이다. 이전에 쓴 오류 메시지를 내게주었습니다. – Peni

관련 문제