我有一個名爲column_A和column_B 2列的表。SQL搜索喜歡或包含
此表中的一行包含column_A中的值AAA和column_B中的值BBB。
如果我要尋找的AAA或BBB與
SELECT * FROM table WHERE column_A LIKE '%AAA%' OR column_B LIKE '%AAA%';
或
SELECT * FROM table WHERE column_A LIKE '%BBB%' OR column_B LIKE '%BBB%';
我得到一個結果。
但是,如果我選擇'%AAA BBB%'或'%AAA xyz%',我就沒有結果。
我搜索的值來自搜索表單。只要用戶只輸入BBB或AAA,一切都很好,當他使用AAA或BBB和其他搜索結合時,搜索功能無法工作。
我該如何解決這個問題?我是否需要拆分搜索詞喜歡這裏提到的:http://www.iamcal.com/publish/articles/php/search/
您需要拆分搜索詞或使用全文搜索。 – 2014-12-02 12:14:09
您可以參考http://dev.mysql.com/doc/refman/5.5/en/fulltext-boolean.html全文搜索鏈接 – 2014-12-02 12:15:32
'%AAA xyz%表示您正在尋找'AAA xyz'+有些東西沒有'AAA'或'xyz' – 2014-12-02 12:17:57