我有一個父表有多個子表的產品 - 軟管,鋼管,ElectricCables,FiberOptics。將多行表中的行組合成單表
ProductId - 產品表中的主要關鍵字段 ProductId-軟管,鋼管,ElectricCables,FiberOptics中的ForeignKey字段。
產品表中有1與子表
我想所有表的結果,並結合大量的關係。 對於eg - 產品P1具有PK字段ProductId,它在所有子表中用作FK。
如果軟管表有4個記錄與ProductId 50和Steeltubes表有4個記錄與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的標籤。 –