首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查找字符串中特定位置的字符序列

查找字符串中特定位置的字符序列
EN

Stack Overflow用户
提问于 2015-11-25 08:25:51
回答 2查看 861关注 0票数 1

我需要使用SQL来查找字符串中特定位置的字符序列。

示例: atcgggatgccatg

我需要找到从字符7或字符7-9开始的'atg‘,这两种方法都可以。我不想在字符串的末尾找到'atg‘。我知道LIKE,但不知道如何在特定的位置使用它。

谢谢

EN

回答 2

Stack Overflow用户

发布于 2015-11-25 08:45:29

在MS Access中,您可以这样写:

代码语言:javascript
复制
where col like '???????atg*' or
      col like '????????atg*' or
      col like '?????????atg*'

但是,如果您对这种类型的比较感兴趣,则可以考虑使用支持正则表达式的数据库。

票数 0
EN

Stack Overflow用户

发布于 2015-11-25 08:34:24

如果你看一看this page,你会发现LIKE完全能够做你想做的事情。例如,要查找3字符偏移量处的内容,您可以使用下面这样的内容

代码语言:javascript
复制
SELECT * FROM SomeTable WHERE [InterestingField] LIKE '___FOO%'

'_‘(下划线)是任何字符的位置标记。在模式中有3个"any char“标记,并带有尾随的'%',这意味着上面的SQL将匹配从第四个char开始的FOO的任何内容,然后匹配其他任何内容(包括没有任何内容)。

要查找7个字符的内容,请使用7个下划线。

如果这不是很清楚,请告诉我。

编辑:我引用了SQL Server的内容,而不是Access。换成'?‘

修改后的查询:

代码语言:javascript
复制
SELECT * FROM SomeTable WHERE [InterestingField] LIKE '???FOO*'
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33906443

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档