0

我有5张桌子。主要表是:RisCtxRisObjRis

RisCtx*------------* RisObj
RisObj*------------*Ris

(*---* = 多对多)

所以我又得到了 2 个表:RisCtxRisObjRisObjRis(对于多对多)。

我想要的是创建一个view收集与troughRisCtx有连接的所有记录。RisRisObj

我有点不知道:(..我读过一些关于 INNER JOIN 的东西,但我看不到一点间隙......

架构 数据库架构

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 
4

1 回答 1

1

由于您没有提供模式,我无法向您展示您的ON子句应该是什么样子,但基本查询结构是:

select RisCtx.*
from RisCtx 
inner join RisCtxRisObj on ...
inner join RisObj  on ...
inner join RisObjRis on ...
inner join Ris on ...
于 2012-05-31T14:15:32.187 回答