我正在一個網站的'高級搜索'頁面上輸入一個關鍵字,比如'我喜歡蘋果',它可以使用以下選項搜索數據庫:Php/MySql'高級搜索'頁面
查找:與所有的話,隨着 精確短語,隨着 的話至少一個,如果沒有的話
我可以採取由「精確搜索」的護理:
SELECT * FROM myTable WHERE field='$keyword';
通過「至少一家之言」:
SELECT * FROM myTable WHERE field LIKE '%$keyword%';//Let me know if this is the wrong approach
但其「字詞的至少一個」和「無詞」說我卡上。
關於如何實現這兩個的任何建議?
編輯:關於「至少一個字」它不會是使用爆炸()打破關鍵字進言,並運行一個循環的好方法添加
(field='$keywords') OR ($field='$keywords) (OR)....
因爲有在查詢中還有一些其他AND/OR子句,我不知道可以有多少個子句。
請參閱我上面的編輯。你認爲這是一個很好的解決方案,即可以在查詢中放入OR子句的數量是否有限制? – 2009-01-02 12:05:00
可能有一個限制,但我從來沒有打過它,並且在語句的位置做了更長的時間,但添加得越多,查詢就會越慢,`like`特別慢。 – Re0sless 2009-01-02 12:07:29