为了账号安全,请及时绑定邮箱和手机立即绑定

mysql分词查询问题

mysql分词查询问题

PHP
哈士奇WWW 2019-03-05 20:15:19
客户输入 公号 能匹配出 公园壹号这个楼盘客户输入 公园1号 也能匹配出 公园壹号这个楼盘客户输入 公园一号 也能匹配出 公园壹号这个楼盘请问怎么样才能做到这样的搜索,我用的是php+mysql搭建的网站,需要开启mysql全文搜索吗,但是看了下,全文搜索好像并不能完全解决我说的这个问题
查看完整描述

7 回答

?
精慕HU

TA贡献1845条经验 获得超8个赞

可以用elastic search实现,你这个需求mysql解决不了。如果数据库不大,可以把所有楼盘名字放到本地cache里,然后做index search。

查看完整回答
反对 回复 2019-03-18
?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

这个和mysql肯定已经没关系了
需要你后端自己做手动转换,比如将前端传的1和一转换为壹再调用mysql

查看完整回答
反对 回复 2019-03-18
?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

代码先转换一下搜索关键词再查询吧,数据库还没有这么智能。

查看完整回答
反对 回复 2019-03-18
?
隔江千里

TA贡献1906条经验 获得超10个赞

后面两个,全文搜索+中文分词应该能搞定,第一个,估计只能自己建影射了

查看完整回答
反对 回复 2019-03-18
?
慕虎7371278

TA贡献1802条经验 获得超4个赞

这个并不是mysql的的范畴了,而是你的业务逻辑要做的事情了,其实可以给楼盘表加个关键词列表的字段,比如“公园壹号”对应的搜索关键词列表“公号,公园1号,公园一号,公园壹号,公园”。。。。在搜索的时候,优先匹配关键词列表。

查看完整回答
反对 回复 2019-03-18
?
鸿蒙传说

TA贡献1865条经验 获得超7个赞

这个并不是mysql的的范畴了

查看完整回答
反对 回复 2019-03-18
  • 7 回答
  • 0 关注
  • 541 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信