[英]How can I restrict the SELECT MATCH AGAINST to return ony results that contains all searched terms?
如果我的術語是例如iphone ipod,則以下查詢
SELECT id FROM products WHERE MATCH (name) AGAINST ('$term')
會給我包含兩個或兩個術語的結果。
如何限制顯示僅包含兩個術語的結果? 速度是我的關注點。
謝謝。
在每個單詞前添加一個+
:
$words = explode(" ", $term);
$all = implode(" +",$words);
$sql =
"SELECT id
FROM products
WHERE MATCH (name) AGAINST ('+" . $all . "' IN BOOLEAN MODE)"
確保轉義輸入項以防止SQL注入。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.