我有以下值
ABCD_AB_1234
ABCD_ABC_2345
ABCD_ABCD_5678
和匹配它们正则表达式
ABCD_[A-Z]{2-4}_[0-9]{4}
现在,我希望将该正则表达式转换为SQL查询,以便从数据库中取回这些记录。
现在我有一个where子句
where [columnName] like 'ABCD_[A-Z][A-Z]%[_][0-9][0-9][0-9][0-9]%'
问题是,我无法像在正则表达式中那样在SQL查询中定义范围,如{2-4},我现在所做的只是设置最小范围。
有没有解决的办法?
1条答案
按热度按时间dxxyhpgq1#
假设您要解释整个情况,最简单的方法可能是创建3个条件来涵盖您的情景,例如:
它不是最佳的,但SQL Server没有任何正则表达式支持,所以如果你必须在SQL中这样做,这是一种方法。