我正在尝试在 MySQL 中使用 MATCH AGAINST
选择产品。
标题的长度指定为单个数字加上表示米的字母m
,即1m
、2m
、5m
等
当我尝试将 5m network cable
与下面的查询匹配时,它还会返回 0.5m network cable
、1.5m network cable
等.
如何在 2 个字符的字符串上得到一个精确的单词 MATCH
?
我的查询:
SELECT title, category, price
FROM products_table
USE index (prod_idx)
WHERE (MATCH (title) AGAINST ('+"5m" +"network" +"cable"' IN BOOLEAN MODE))
最佳答案
问题是 FULLTEXT 想到了 '.'作为单词的结束符/起始符/分隔符,但您想将其视为字母。所以,把它变成一封信:
插入数据时,将'.'改为到 '_' 使 0.5m 变成 0_5m,这将被视为一个词。在搜索字符串中进行相同的更改。
关于mysql - 使用 MATCH AGAINST 查询字符串返回的不仅仅是严格等于字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28920176/