使用MySQL查找一组匹配的单词

时间:2012-08-24 17:55:02

标签: mysql full-text-search

我有一个字符串例如:

MatchString = "Renal and Dialysis Technologist and Technician"

我的表格中有一个名为degree_name

的字段

作为一个例子,其中一个学位名称可能是Dialysis Technician

我想尝试找到包含上面MatchString中的一些单词的度数 - 可能像2或3个匹配 - 有一个简单的方法在mysql中执行此操作 - 如果是这样,代码是什么看起来像?

谢谢!

2 个答案:

答案 0 :(得分:1)

在布尔模式下进行全文搜索,您将获得良好的效果。首先确保您的表格是MyISAM,degree_name上有全文索引。然后,此查询将返回匹配项,以及与您的MatchString匹配的字词数:

SELECT degree_name,
MATCH (degree_name)
AGAINST ('Renal and Dialysis Technologist and Technician' IN BOOLEAN MODE) FROM degrees
WHERE MATCH (degree_name)
AGAINST ('Renal and Dialysis Technologist and Technician' IN BOOLEAN MODE)

答案 1 :(得分:0)

我会使用,就像“透析技术员%”那样会给你一个两个字的匹配。如果你想要三个,你需要添加其他单词。 %正在寻找文本之后的通配符,所以如果你想在透析技术员之前看到信息,如果需要看起来像这样:在哪里'%透析技术员'。