여러 개의 하위 테이블이있는 제품 - 호스, 스틸 튜브, 전기 케이블, Fiberoptics.다중 테이블의 행을 단일 테이블로 결합
ProductId - 제품 테이블의 기본 키 ProductId- 호스, 강철 튜브, 전기 케이블, Fiberoptics의 ForeignKey 필드.
제품 테이블은 자식 테이블 내가 모든 테이블의 결과를 결합하려는
많은 관계로 1가있다. 예를 들어 - 제품 P1에는 모든 하위 테이블에서 FK로 사용되는 PK 필드 ProductId가 있습니다.
호스 테이블에 ProductId 50이 4 개 있고 Steeltubes 테이블에 ProductId 50이있는 레코드가 두 개있는 경우 왼쪽 결합을 수행하면 왼쪽 결합은 결과로 8 개 레코드를 보여주는 레코드의 카티 션 곱을 수행하지만 4 개의 레코드 여야합니다. 당신의 네 개의 레코드가 다른 테이블의 첫 번째 레코드와 결합되어 다음 네 개의 레코드가의 두 번째 레코드와 결합되어 있기 때문에
;with HOSESTEELCTE
as
(
select '' as ModeType, '' as FiberOpticQty , '' as NumberFibers, '' as FiberLength, '' as CableType , '' as Conductorsize , '' as Voltage,'' as ElecticCableLength , s.TubeMaterial , s.TubeQty, s.TubeID , s.WallThickness , s.DWP ,s.Length as SteelLength , h.HoseSeries, h.HoseLength ,h.ProductId
from Hoses h
left join
(
--'' as HoseSeries,'' as HoseLength ,
select TubeMaterial , TubeQty, TubeID , WallThickness , DWP , Length,ProductId from SteelTubes
) s on (s.ProductId = h.ProductId)
) select * from HOSESTEELCTE
MySQL의 태그를 얻을. –