風吟月*_*風吟月 14 mysql full-text-search
下面是我坚持使用的一个示例sql,它不会返回名为"iphone 4s"的产品,它返回10个其他结果.任何帮助都会非常感谢
SELECT * FROM products
WHERE match(desc) against('+iphone +4s' IN BOOLEAN MODE) LIMIT 10";
Run Code Online (Sandbox Code Playgroud)
结果:包含"iphone"和"4s"字样
SELECT * FROM products
WHERE match(desc) against('+iphone 4s' IN BOOLEAN MODE) LIMIT 10";
Run Code Online (Sandbox Code Playgroud)
结果:包含单词'iphone',但如果它们也包含'4s'则排列更高
SELECT * FROM products
WHERE match(desc) against('iphone 4s' IN BOOLEAN MODE) LIMIT 10";
Run Code Online (Sandbox Code Playgroud)
结果:包含"iphone"或"4s"字样
我想搜索的是'iphone 4s',但它带有其他结果,比如'iphone很好,但是4s ......','新的iphone 5已发布......',...
任何人都可以帮我解决吗?谢谢.
Joa*_*son 16
要匹配精确的词组,只需使用双引号括起要匹配的词组;
SELECT *
FROM products
WHERE MATCH(desc)
AGAINST('"iphone 4s"' IN BOOLEAN MODE)
LIMIT 10
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18202 次 |
| 最近记录: |