sql分词查询,实现类似ES的效果

需求:希望通过缩写查询到全称,列如输入常州一院,要得到常州市第一人民医院。
sql分词查询,实现类似ES的效果_第1张图片
1、创建全文索引

# 创建全文索引
create FULLTEXT INDEX ft_hospitalname ON `hospital_information`(`hospitalname`) with parser ngram;

2、编写查询sql

# 自然语言模式
select * from hospital_information where MATCH(hospitalname) AGAINST ('常州第一人民医院' IN NATURAL LANGUAGE MODE) and provinceid='320000' and cityid='320400';

3、得到结果
sql分词查询,实现类似ES的效果_第2张图片

4、参考文献:https://blog.csdn.net/FuzengQiu/article/details/126990743

你可能感兴趣的:(sql,elasticsearch,数据库)