MYSQL网站制作之全文本检索的使用(2)
如IBM公司最近宣布让渠道合作伙伴分销其SaaS应用程序的新计划。微软认为MySQL学习教程是销售其云计算服务的重要组成部分。然而即使有这种趋势,DBaaS仍然不同于内部数据库,解决方案提供商必须认识到这一点;否则,他们不仅仅是丢失几个客户,而是要失去的更多。CONTAINS语法
我们一般在WHERE子句中利用CONTAINS,就象如许:SELECT*FROMtable_nameWHERECONTAINS(fullText_column,searchcontents)。
我们经由过程例子来进修,假定有表students,个中的address是全文本检索的列。
1.查询住址在北京的先生
SELECTstudent_id,student_name
FROMstudents
WHERECONTAINS(address,beijing)
remark:beijing是一个单词,要用单引号括起来。
2.查询住址在河北省的先生
SELECTstudent_id,student_name
FROMstudents
WHERECONTAINS(address,"HEIBEIprovince")
remark:HEBEIprovince是一个词组,在单引号里还要用双引号括起来。
3.查询住址在河北省或北京的先生
SELECTstudent_id,student_name
FROMstudents
WHERECONTAINS(address,"HEIBEIprovince"ORbeijing)
remark:能够指定逻辑操纵符(包含AND,ANDNOT,OR)。
4.查询有南京路字样的地点
SELECTstudent_id,student_name
FROMstudents
WHERECONTAINS(address,nanjingNEARroad)
remark:下面的查询将前往包括nanjingroad,nanjingeastroad,nanjingwestroad等字样的地点。
ANEARB,就暗示前提:A接近B。
5.查询以湖开首的地点
SELECTstudent_id,student_name
FROMstudents
WHERECONTAINS(address,"hu*")
remark:下面的查询将前往包括hubei,hunan等字样的地点。
记着是*,不是%。
6.相似加权的查询
SELECTstudent_id,student_name
FROMstudents
WHERECONTAINS(address,ISABOUT(cityweight(.8),countywright(.4)))
remark:ISABOUT是这类查询的关头字,weight指定了一个介于0~1之间的数,相似系数(我的了解)。暗示分歧前提有分歧的偏重。
7.单词的多态查询
SELECTstudent_id,student_name
FROMstudents
WHERECONTAINS(address,FORMSOF(INFLECTIONAL,street))
remark:查询将前往包括street,streets等字样的地点。
关于动词将前往它的分歧的时态,如:dry,将前往dry,dried,drying等等。
以上例子都利用英文,不利用中文是由于有的查询体例中文不撑持,并且我的盘算机是英文体系
付:对《全文检索1得质疑》:
5.更新全文本索引的历程比惯例索引要耗时,并且也不象惯例索引那样能够由数据库体系当即更新。
能够当即更新的
9.假如在查询中包括noisewords,就会激发毛病,在使用程序中应往除这些noisewords。
不合错误,查询时会本人过滤失落noiseword,只要查询的内容满是noisewords时才会呈现毛病
全文本检索的使用(1)
当然,或许这并不是我们拒绝MySQL的一个有说服力的MySQL学习教程,但是对于一些比较守旧的IT经理来说,在为一些关键业务选择平台的时候,平台的成熟性却是必须要考虑的一个因素,在这一点上,MySQL无疑毫无优势。 我是一个ERP初学者,对于前台运用基本熟悉,但对于后台SQLServer的运用一点也不懂,特想学习下相关资料。至少懂得一些基本的运用。希望各位能给于建议,小弟再谢过! 如安全管理、备份恢复、性能监控和调优等,SQL只要熟悉基本操作就可以,只要程序设计部分只要稍加了解即可(如存储过程、触发器等)。 你可以简单地认为适合的就是好,不适合就是不好。 比如,MicrosoftSQLServer2008的某一个版本可以满足现在的这个业务的需要,而且价格还比Oracle11g要便宜,那么这一产品就是适合的。 多加的系统视图和实时系统信息这些东西对DBA挑优非常有帮助,但是感觉粒度还是不太细。 微软对CLR作了大篇幅的宣传,这是因为数据库产品终于融入.net体系中。最开始我们也是狂喜,感觉对象数据库的一些概念可以实现了。 入门没那么困难,精通没那么容易 同样会为索引视图等应用带来麻烦。看看行级和事务级的快照数据放在tempdb中,就能感觉到目前架构的尴尬。
页:
[1]