0
다음과 같은 문제가 있습니다. 우리는 같이 두 개의 테이블이 있습니다CROSS JOIN 및 UPDATE THIRD TABLE은 작동하지 않습니다.
[t1]
Ruler ID1 S1 E1
**1 a 1 10**
1 b 17 24
1 c 20 24
1 d 21 24
*2 e 40 47*
[t2]
Ruler ID2 S2 E2
**1 a 7 15**
**1 b 8 16**
2 c 25 35
*2 d 41 50*
[t3]
Ruler ID1 S1 E1 ID2 S2 E2
**1 a 1 10 a 7 15
1 a 1 10 b 8 16**
*2 e 40 7 d 41 50*
- 우리는 약 20 저울 (여기 난 그냥 규모의 1을 표시하고 2)
- S1 (S2) 및 E1 (E2) 각각 시작 및 종료 대표가 눈금 위 위치
- L1 (L2)는 각 세그먼트의 길이입니다. T1에서 세그먼트는 서로 나는 CROSS은 T1과 T2의 가입 어떤 세그먼트를 찾을 할 필요가 겹쳐 각 다른
선택하려면 세그먼트를 겹칠 수 T2 그 반대의 여러 분야에서
나는 CROSS JOIN을 대체하지 않습니다 0 일치하는 행
UPDATE t3 CROSS JOIN (t1, t2) ON
((t2.S2 BETWEEN t1.S1 AND t1.E1) OR (t2.E2 BETWEEN t1.S1 AND t1.E1))
SET t3.CHR1 = t1.CHR1, t3.ID1 = t1.ID1, t3.S1 = t1.S1, t3.E1 = t1.E1, t3.ID2 =
t2.ID2, t3.S2 = t2.S2, t3.E2 = t2.E2
WHERE t1.CHR1 = t2.CHR2;
내가 T3 INTO INSERT 않는 (또는 내부 조인) 경우
을 반환 테이블 UPDATE를 수행합니다. ... 그래서 여기에서 무엇을 해야할지 모르겠다. ..
문제는 t2의 여러 세그먼트가 t1과 겹칠 수 있다는 것입니다. – madkitty