我有四張表,照片,事件,新聞,現貨和照片是我想檢查記錄與其他表的關係。過濾一個表與多個內部聯接對其他表
照片具有以下sructure:
比照片等id
rel_model -> one of "news", "spot" and "event"
rel_id -> id of the related record in rel_model table
...
表不斷更新和一些記錄AR刪除。我想過濾照片以獲取與其他表格上的現有記錄相關的記錄。
我嘗試以下
select
count(*)
from
Photo
inner join Event ON (rel_id = Event.id and rel_model="event")
inner join News ON (rel_id = News.id and rel_model="news")
inner join Spot ON (rel_id = Spot.id and rel_model="spot");
,但我得到0的結果,其中有嘗試它只是一個內部聯接作品針對單個表
select
count(*)
from
Photo
inner join Event ON (rel_id = Event.id and rel_model="event") ;
檢查我需要添加一些和或邏輯在內部連接之間,有點無法弄清楚如何。
我該如何獲取仍然與其他表格有完整關係的照片?