2011-08-13 92 views
0

我使用mysql數據庫...生成搜索查詢問題

我在這個領域的所有食品類型以逗號分隔有山坳名food_type
表。 現在我的問題是,我想從他們那裏得到搜索結果。
對於實例
數據在food_type山坳就像BBQ,Fast Food,Desi,Seafood,Vegetarian,
我要搜索BBQ,Seafood。但它不能給我準確的結果。 我嘗試在我的SQL查詢,但結果相同使用like :-(
我怎樣才能做到這一點。

+1

標準化數據庫,避免這種問題從一開始 – knittl

+0

@knitti:但現在我能做些什麼。而我有一個非常大的數據庫 – chhameed

+0

更多遵循knittl的建議的一個原因。 :)使用編程語言,分解您的字符串併爲每個項目創建一個記錄。 –

回答

1

你甚至可以使用FIND_IN_SET()函數

select * from table 
where find_in_set('bbq',field_name) and find_in_set('Seafood',field_name) 

但是,作爲已經寫好,你表需要進行標準化

+0

哦。謝謝尼克,我做了:-) – chhameed

0

您可以嘗試2 LIKE查詢:

select * from table where field like "bbq" and field like "seafood"