mysql - 字符串中相邻字符的 SQL 正则表达式

标签 mysql sql regex

我正在寻找一种使用正则表达式运行字符串中特定模式的 SQL 查询的方法。该字符串由字母 A 开头,然后是 3 个随机字符,后跟字符对“AB”、“CD”或“EF”组成。 (不能是“BA”、“DC”……)

成功查询的例子:

AfGhAB

AtttCD

不成功的查询:

AtreBA

AdrtFC

谢谢, 奥娜。

最佳答案

无需使用正则表达式即可获得所需内容的简单方法:

select columns
from tablename
where columnname like 'A%'
  and substring(columnname from 5 for 2) in ('AB','CD','EF')

SUBSTRING (ANSI SQL) 有时称为 SUBSTR

可能会执行得更快。

关于mysql - 字符串中相邻字符的 SQL 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29192235/

相关文章:

c# - Regex 词边界表达式

java - 如何将值插入数据库的类型日期列?

android - 使用 where 条件进行 Sqlite 查询需要满足多个条件

php - 更新 codeigniter 中的多条记录

sql - ORDER BY 更改了具有相同名称的列

java - 当我向变量分配函数时,如何让变量自行更新

JavaScript 匹配逗号分隔字符串中的多个值

python - 无法在 re.sub() repr 表达式的函数调用中使用 '\1' 反向引用捕获组

php - MYSQL语法错误

mysql - 将 mysql 时间戳字段转换为格式化日期 dd/mm/yyyy