MySQL全文本搜索

启用全文本搜索支持

create table productnotes
(
	note_id int NOT NULL AUTO_INCREMENT,
	prod_id char(10) NOTNULL,
	note_date datetime NOT NULL,
	note_text text NULL,
	FULLTEXT(note_text)
)ENGINE = MyISAM;

进行全文本搜索:match()指定搜索列,against()指定搜索的文本

select note_text 
from productnotes 
where match(note_text) against('rabbit');

或者

select note_text 
from productnotes 
where note_text like '%rabbit%';

对结果进行排序

select note_text 
where match(note_text) against('rabbit') as rank
from productnotes;

使用查询扩展

select note_text 
from productnotes 
where match(note_text) against('anvils' with query expansion);

布尔文本搜索
匹配词heavy,排除包含rope*

select note_text 
from productnotes 
where match(note_text) against('heavy -rope*' in boolean mode);

匹配包含rabbit和bait的行

select note_text 
from productnotes 
where match(note_text) against('+rabbit +bait' in boolean mode);

匹配包含rabbit或bait的行

select note_text 
from productnotes 
where match(note_text) against('rabbit bait' in boolean mode);

匹配短语rabbit bait

select note_text 
from productnotes 
where match(note_text) against('"rabbit bait"' in boolean mode);

匹配rabbit和bait,增加前者等级,降低后者等级

select note_text 
from productnotes 
where match(note_text) against('>rabbit <bait' in boolean mode);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

给算法爸爸上香

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值