我有5個表。主表是:RisCtx
,RisObj
和Ris
。sql查詢2個多對多關係的3個表
RisCtx
* ----------- * RisObj
RisObj
* ----------- * Ris
(* --- * =多到-many)
所以我又有兩個表叫做:RisCtxRisObj
和RisObjRis
(對於多對多)。
我想要的是創建一個view
,它收集RisCtx
中的所有記錄,它們與Ris
槽RisObj
有關。
我得有點不知道:(..我看了一些關於內部連接,但我沒有看到一點間隙...
架構
CREATE VIEW `mydb`.`CtxView_CtxFromObj_ObjFromRisk` AS
select RisCtx.*
from RisCtx
inner join RisCtxRisObj on RisCtx.id=RisObjRisCtx.RisCtx_id
inner join RisObj on RisObjRisCtx.RisObj_id=RisObj.id
inner join RisObjRis on RisObj.id=RisObjRis.Objective_id
inner join Ris on RisObjRis.Risk_id=Ris.id
請發表您的架構 – RedFilter
好吧,我已經發布了架構,並刪除了一些沒有必要的東西。會是這樣嗎? (請參閱OP中的其他信息) – Highmastdon
是的,您的代碼看起來不錯。 – RedFilter