当前位置: 首页 > news >正文

做彩票网站要多少钱软件开发外包平台

做彩票网站要多少钱,软件开发外包平台,网站开发需要掌握哪些知识,公司网站域名到期了去哪里缴费brief InnoDB存储引擎从MySQL 5.6开始支持全文本搜索。具体来说,MySQL使用InnoDB存储引擎的全文本搜索功能称为InnoDB全文本搜索(InnoDB Full-Text Search)。InnoDB全文本搜索支持标准的全文本搜索查询语法和多语言分词器,因此可…

brief

InnoDB存储引擎从MySQL 5.6开始支持全文本搜索。具体来说,MySQL使用InnoDB存储引擎的全文本搜索功能称为InnoDB全文本搜索(InnoDB Full-Text Search)。InnoDB全文本搜索支持标准的全文本搜索查询语法和多语言分词器,因此可以处理包括汉字在内的多种字符集。


LIKE关键字,它利用通配操作符匹配文本能够查找包含特殊值或部分值的行(不管这些值位于列
内什么位置)。

使用正则表达式,可以编写查找所需行的非常复杂的匹配模式。

但是他们有限制:

  • 性能——通配符和正则表达式匹配通常要求MySQL尝试匹配表中所有行(而且这些搜索极少使用表索引)。因此,由于被搜索行数不断增加,这些搜索可能非常耗时。
  • 明确控制——使用通配符和正则表达式匹配,很难(而且并不总是能)明确地控制匹配什么和不匹配什么。

为了进行全文本搜索,必须索引被搜索的列,而且要随着数据的改变不断地重新索引。
在索引之后, SELECT可与Match()和Against()一起使用以实际执行搜索。

一般在创建表时启用全文本搜索。 CREATE TABLE语句接受FULLTEXT子句,它给出被索引列的一个逗号分隔的列表。

create table productnotes
(
note_id int not NULL auto_increment,
prod_id char(10) not NULL,
note_date datetime not NUll,
note_text text NUll,
primary key(note_id),
fulltext(note_text)
)ENGINE=InnoDB;

这些列中有一个名为note_text的列,为了进行全文本搜索,MySQL根据子句FULLTEXT(note_text)的指示对它进行索引。
这里的FULLTEXT索引单个列,如果需要也可以指定多个列。
在定义之后, MySQL自动维护该索引。在增加、更新或删除行时,索引随之自动更新。

进行全文本搜索

在索引之后,使用两个函数Match()和Against()执行全文本搜索
其中Match()指定被搜索的列, Against()指定要使用的搜索表达式。

select note_text from productnotes
where match(note_text) against('rabbit');# 可以试试这句口令
select note_text, match(note_text) against('rabbit') AS rank;

Match(note_text)指示MySQL针对指定列进行搜索, Against(‘rabbit’)指定词rabbit作为搜索文本



使用查询扩展

比如,你想找出所有提到anvils的注释。只有一个注释包含词anvils,但你还想找出可能与你的搜索有关的所有其他行,即使它们不包含词 anvils。

这也是查询扩展的一项任务。在使用查询扩展时, MySQL对数据和索引进行两遍扫描来完成搜索:

  • 首先,进行一个基本的全文本搜索,找出与搜索条件匹配的所有行;
  • 其次, MySQL检查这些匹配行并选择所有有用的词(我们将会简要地解释MySQL如何断定什么有用,什么无用)。
  • 再其次, MySQL再次进行全文本搜索,这次不仅使用原来的条件,而且还使用所有有用的词。
select note_text from productnotes
where match(note_text) against('rabbit' with query expansion);


布尔文本搜索

即 使 没 有 定 义FULLTEXT索引,也可以使用它。但这是一种非常缓慢的操作(其性能将随着数据量的增加而降低)。

# 此全文本搜索检索包含词rabbit的所有行
select note_text from productnotes
where match(note_text) against('rabbit' IN BOLLEAN MODE);# 匹配包含rabbit但不包含任意以rope开始的词的行
select note_text from productnotes
where match(note_text) against('rabbit -rope*' IN BOLLEAN MODE);

在这里插入图片描述

全文本搜索注意事项

  • 在索引全文本数据时,短词被忽略且从索引中排除。短词定义为那些具有3个或3个以下字符的词(如果需要,这个数目可以更改)。
  • MySQL带有一个内建的非用词( stopword)列表,这些词在索引全文本数据时总是被忽略。如果需要,可以覆盖这个列表
  • 许多词出现的频率很高,搜索它们没有用处(返回太多的结果)。因此, MySQL规定了一条50%规则,如果一个词出现在50%以上 的行中,则将它作为一个非用词忽略。 50%规则不用于IN BOOLEAN MODE。
  • 如果表中的行数少于3行,则全文本搜索不返回结果(因为每个词或者不出现,或者至少出现在50%的行中)。
  • 忽略词中的单引号。例如, don’t索引为dont。
  • 不具有词分隔符(包括日语和汉语)的语言不能恰当地返回全文本搜索结果。
http://www.hkea.cn/news/114933/

相关文章:

  • 株洲专业网站排名优化深圳产品网络推广
  • 深圳美食教学网站制作如何免费搭建自己的网站
  • 兰州移动端网站建设广东整治互联网霸王条款
  • 彩票网站该怎么建设天津seo实战培训
  • 原平的旅游网站怎么做的新冠疫情最新情况最新消息
  • 网站开发软件著作权归谁seo外包
  • 小说网站的网编具体做哪些工作南宁网站快速排名提升
  • 承德网站设计seo互联网营销培训
  • 工信部网站备案查询 手机seo专员的工作内容
  • 淘宝活动策划网站视频营销成功的案例
  • 精准营销数据杭州排名优化软件
  • 中卫网站建站设计seo学习论坛
  • wordpress初始登录seo排名赚app靠谱吗
  • 软件外包保密协议seo相关岗位
  • 后台网站开发文档下载班级优化大师app
  • 辛集城乡建设管理局网站网络营销网络推广
  • 阿里云部署一个自己做的网站吗电商网站搭建
  • 免费汽车租赁网站模板网站域名解析ip查询
  • 企业解决方案官网国内seo排名分析主要针对百度
  • 变态版手游石景山区百科seo
  • 阿里云控制台登录入口seo矩阵培训
  • wordpress苗木模板网站搜索排优化怎么做
  • 网站图片引导页怎么做重庆seo招聘
  • 如何做属于自己的领券网站郑州百度网站优化排名
  • 建设银行益阳市分行桃江支行网站公司页面设计
  • vps 网站上传网站seo优化是什么意思
  • wordpress cos腾讯云seo网站优化收藏
  • 鹤岗商城网站建设免费域名申请
  • 江苏三个地方疫情严重抖音视频排名优化
  • 竞价排名广告东莞关键词排名快速优化