2012-10-16 32 views
-1

我有類別和列表存儲在列表類別表和列表表分別。多對多關係顯示其他匹配條件

列表可以存儲在很多類別中,並且類別可以有很多列表。這些由表連接* ListingCategory_Listings *:

ID | ListingCategoryID | ListingID 

我需要以某種方式抓住所有在那裏它們上市符合一定條件的ListingCategories。

作爲一個例子,想像一下類別,如:食物,飲料,住宿。

上市將被鏈接到食品和飲品,酒店會鏈接到食品,飲料和住宿一間酒吧,一間宿舍將鏈接到遞交等等等等

所有這些房源是地理編碼,我想能夠顯示確定地理位置的X英里內有列表的類別。因此,如果酒吧在X英里範圍內,我們將展示食物和飲料。如果只是宿舍在這個範圍內倒塌,我們只會顯示住宿等。我有邏輯來計算出距離,我只是不知道如何得到我想要的結果

最後......對於可怕的道歉文章標題

+1

這將有助於如果你能表現出你的希望能拿回樣品返回結果。有幾種不同的方式來做你的要求,但不知道用什麼形式來表達它的開放式問題。 – RThomas

+0

@RThomas我需要的是存儲在ListingCateogry表中的ListCategory名稱 – Fraser

回答

2

應儘可能簡單

SELECT DISTINCT c.ID, c.name 
FROM ListingCategory c 
    JOIN ListingCategory_Listings lc 
     ON c.ID = lc.ListingCategoryID 
WHERE lc.ListingID IN (<list of listings comma separated>)