社区
MySQL
帖子详情
模糊搜索符合oh my god的数据,越匹配的越靠前?100分随后补齐
tgtt
2009-04-15 10:43:43
请问如何实现这个功能,模糊搜索一个句子,匹配得单词越多的越靠前?????
这个帐号只有11分了,本问题能解决100分 肯定补齐。
...全文
81
6
打赏
收藏
模糊搜索符合oh my god的数据,越匹配的越靠前?100分随后补齐
请问如何实现这个功能,模糊搜索一个句子,匹配得单词越多的越靠前????? 这个帐号只有11分了,本问题能解决100分 肯定补齐。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yyz0832
2009-04-16
打赏
举报
回复
建议用全文检索吧.如果你需要查询的字段是中文的话,那做一下分词吧
wwwwb
2009-04-16
打赏
举报
回复
(length(col)-length(replace(col,'ss',''))/LENGTH('ss') :即SS出现的次数
select * from tt order by
(length(col)-length(replace(col,'ss',''))/LENGTH('ss')
wwwwb
2009-04-16
打赏
举报
回复
用replace把单词替换成'',然后取原来和替换后的长度差,差的越多,匹配的就越多
(length(col)-length(replace(col,'ss',''))/LENGTH('ss')
一般就是用REPLACE来取得的,在MYSQL下
replace(replace(col,'ss',''),'yy','')
语法是正确的
replace的时候如何能做到大小写不敏感,比如我要替换God,数据库里找到god也能替换掉?
转换成大写 OR 小写
UPPER、LOWER
replace(LOEWR(replace(LOWER(col),'ss','')),'yy','')
tgtt
2009-04-16
打赏
举报
回复
ACMAIN_CHM: 其实我的意思很简单,在一个字段里如果我要查询的三个单词都包含的话,不管顺序,那肯定关联性越强,就应该排在最前面。其次包含两个单词的关联性差一点,就排在后面。只包含一个单词的就排最后。
这就好比baidu搜索一样,你搜索出来结果肯定是关联性越强的排在越前面。
yangxiao_jiang:您的方法让人耳目一新,确实是个解决办法。我有两个疑问:(1)replace(replace(col,'ss',''),'yy','')这样使用不知道有没有语法错误?
(2)replace的时候如何能做到大小写不敏感,比如我要替换God,数据库里找到god也能替换掉?
yangxiao_jiang
2009-04-16
打赏
举报
回复
用replace把单词替换成'',然后取原来和替换后的长度差,差的越多,匹配的就越多
select table.*,(length(col)-length(replace(col,'ss','')) as ord from table order by ord
类似这样的sql
ACMAIN_CHM
2009-04-16
打赏
举报
回复
匹配得单词越多的越靠前
这个如何理解?
'hello oh my god test'
'test oh my god test oh my god'
'oh my test sd god'
'hi my god test'
建议能列点例子说明。
homework oms
homework
oh
my
god
homework
oh
my
god
homework
oh
my
god
与
Oh
My Zsh 不可错过的邂逅:如何离线安装
Oh
My Zsh
有兴趣玩过
Oh
My Zsh 的人,都无法舍弃对于
Oh
My Zsh 的喜爱,它是一个 zsh 配置框架。而 zsh 又是有别于 bash 的 shell,zsh 的功能相当强大,可配置性非常高。通过 zsh +
Oh
My Zsh 的组合,可以让你的终端变得...
Oh
My Zsh和
Oh
My Posh
之
前
用富文本写的几个还算有用的文章,用markdown写一下再发一遍,希望有人看。 起因 对于小白程序员,配置ZSH最好的办法还是通过
Oh
My Zsh,这名字起的确实耳目一新。。
Oh
My Zsh is a delightful, open source, ...
Pivotal 中国冯雷开直播秀了?
oh
my
god
!!!!
PIVOTAL 中国冯雷开直播秀了?
oh
my
god
zsh+
oh
-my-zsh+命令行自动补全
一、安装zsh yum install -y zsh 在检查下系统的 shell:cat /etc/shells,你会发现多了一个:/bin/zsh 二、安装
oh
-my-zsh git clone https://github.com/robbyrussell/
oh
-my-zsh.git ~/.
oh
-my-zsh cp ~/.
oh
-my-zsh...
MySQL
56,678
社区成员
56,708
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章