SqlServer英文单词全字匹配

2019-12-31 06:17 来源:未知

环境:Vs2013+Sql Server2012

难题:现在数据库记录如下:

图片 1

 

Sentence列保存的是Serbia语的语句,作者今天想寻找富有包括“I”(单词)的语句,即便小编用 Sentence like '%I',作为条件的话,那么像上航海用体育场地选中的这条有个单词“it“(不区分朗朗上口写的气象下),它也会被Select出来,而自作者只想寻找含有“I”那些单词的语句的笔录。

消灭:SqlServer提供了形式相称,相近林和平则,详细内容查阅有关文书档案。

自家先写了一个如此的法则:

Sentence like '%[^a-zA-Z]I[^a-zA-Z]%'

发觉上航海用教室里的第一条,也正是“I would...",“I”早先的单词未有被Select出来,也正是说,这么些标准所相称的是前方要二个非字母的符号(没有字符是不得以的),那么相仿道理,最前面也需求四个非字母的标识(未有字符也是不得以的),所以可改成:

Sentence like '%[^a-zA-Z]I[^a-zA-Z]%' or Sentence like 'I[^a-zA-Z]%' or Sentence like '%[^a-zA-Z]I'

唯独感到那样比较麻烦,若是把Sentence前后各加三个非字母的数字,像原本“I would like I",把它成为“   I would like I  "(前后各加四个空格),那样就能够相称最先先写的非常条件了:

' '+Sentence+' ' like '%[^a-zA-Z]I[^a-zA-Z]%'

TAG标签:
版权声明:本文由金沙澳门唯一官网发布于数据库管理,转载请注明出处:SqlServer英文单词全字匹配