SQL Server中数字范围的通配符

路易

sql server中的模式匹配不能像正则表达式一样工作。是否可以使用LIKE匹配数字范围?我需要做这样的事情:

ABCD 1
ABCD 2
ABCD 3
ABCD 4
ABCD 8
ABCD 9
ABCD 10
...
ABCD 20

我想从“ ABCD 1”到“ ABCD 20”中选择所有数据。但是我想忽略“ ABCD 4”和“ ABCD 8”之间的任何内容。我当然可以执行OR条件,但是我只想检查是否有更优雅的方法。

TIA。

阿尔贝托·索拉诺(Alberto Solano)

您可以使用LIKE运算符,并指定执行以下查询的模式:

SELECT mydata FROM mytable
WHERE(mydata LIKE 'ABCD [1-9]' OR mydata LIKE 'ABCD 1[0-9]' OR mydata LIKE 'ABCD 20') 
AND mydata NOT LIKE 'ABCD [4-8]';

或者,更简洁,更简短的内容:

SELECT mydata FROM mytable
where mydata like 'ABCD [^4-8]%';

看看这个SQL Fiddle

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用SQL的数字通配符

来自分类Dev

SQL Server从列表中获取串联的数字范围(序列中的ISLANDS)

来自分类Dev

SQL Server中的日期范围

来自分类Dev

SQL Server通配符选择

来自分类Dev

SQL Server 通配符问题

来自分类Dev

通配符中的SQL OR语句

来自分类Dev

通配符中的SQL OR语句

来自分类Dev

使用like语句和通配符在SQL SERVER中查找“&”字符

来自分类Dev

SQL Server XML列中的部分通配符搜索

来自分类Dev

在SQL Server中显示选定的日期范围

来自分类Dev

填补SQL Server日期范围中的空白

来自分类Dev

SQL Server中临时表的范围

来自分类Dev

在SQL Server中循环浏览日期范围

来自分类Dev

在SQL Server中按范围分组

来自分类Dev

SQL Server中动态SQL中变量的范围

来自分类Dev

SQL Server中的字母数字序列

来自分类Dev

计算SQL Server中数字的运行增量

来自分类Dev

SQL Server:仅从值中获取数字

来自分类Dev

在 SQL Server 中对字母数字进行排序

来自分类Dev

如何在SQL查询中显示特定范围的数字

来自分类Dev

SQL:如何在SQL Server中输出日期范围

来自分类Dev

PYMYSQL 搜索中的 SQL 通配符

来自分类Dev

ORACLE/SQL:列名中的通配符

来自分类Dev

SQL:GROUP BY用于数字范围?

来自分类Dev

SQL Server死锁由索引中的范围锁引起

来自分类Dev

SQL Server:如何从整数范围中检测无关的值

来自分类Dev

从SQL Server中的几个日期范围填充日期列表

来自分类Dev

在SQL Server中的表中保留值的范围

来自分类Dev

在SQL Server查询中动态选择记录范围