如果我的术语是例如 iphone ipod 以下查询
SELECT id FROM products WHERE MATCH (name) AGAINST ('$term')
会给我包含这两个词或仅包含其中一个词的结果。
如何限制只显示包含这两个字词的结果?速度是我的关注点。
谢谢。
答案 0 :(得分:1)
在每个单词之前添加+
:
$words = explode(" ", $term);
$all = implode(" +",$words);
$sql =
"SELECT id
FROM products
WHERE MATCH (name) AGAINST ('+" . $all . "' IN BOOLEAN MODE)"
请务必转义输入术语以防止SQL注入。