2013-04-05 60 views
0

我有一個標記了網站的列表。我被困在一個查詢使用,這是很快,並會允許「負面」標籤。換句話說,就像當你搜索Google時一樣--yahoo會搜索不包含雅虎的結果。mysql正面和負面標記過濾

我遇到的問題是標籤在網站上。因此,如果用戶搜索雅虎,該網站標記爲雅虎,所以即使它與其他標籤匹配,結果也不會顯示出來。

表的結構是:

網站: ID |其他的東西..

標籤: ID |標籤(其中標籤要麼是雅虎或-yahoo)

任何幫助將不勝感激!

回答

0

您應該重新修改標籤表,以便有一個評分字段,例如,一個簡單的

id | tag | rating (bit) 

所以你只商店「雅虎」在tag領域,並保持+/-東西的收視率領域。

... WHERE tag='yahoo' AND rating=XXX 

如果你不能返工,那麼你就必須修改您的where子句

... WHERE tag='yahoo' OR tag='-yahoo'