匹配未找到的查询数值

时间:2014-11-27 13:08:28

标签: mysql sql match-against

我对MATCH AGAINST查询有问题。当我传递onlu数值时,我得到0结果查询在这里是我的查询:

SELECT * FROM tbl1 WHERE MATCH( Sub_Name ) AGAINST('+praga*' IN BOOLEAN MODE) AND MATCH( Sub_Address ) AGAINST('+203*' IN BOOLEAN MODE) //结果找到0行

SELECT * FROM tbl1 WHERE MATCH( Sub_Name ) AGAINST('+praga*' IN BOOLEAN MODE) AND MATCH( Sub_Address ) AGAINST('+203 s*' IN BOOLEAN MODE) //找到的结果

当我使用(203)中的任何数字然后我得到0结果但我使用203秒的任何字符然后找到结果, 我的地址字段值是“203 surat”

1 个答案:

答案 0 :(得分:0)

因为通配符* IN BOOLEAN MODE返回以它们所附加的单词开头的匹配项。在你的情况下,我想没有任何单词以203开头。因此,您必须指定作为匹配的起始部分的单词/字母。在你的情况下' S'

参考The asterisk serves as the truncation (or wildcard) operator. Unlike the other operators, it should be appended to the word to be affected. Words match if they begin with the word preceding the * operator.