簡體   English   中英

如何限制SELECT MATCH AGAINST返回包含所有搜索詞的原始結果?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM