gpt4 book ai didi

sql - SQL Server 中数字范围的通配符

转载 作者:行者123 更新时间:2023-12-01 13:48:13 24 4
gpt4 key购买 nike

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。

最佳答案

您可以使用 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]%';

看看this SQL Fiddle .

关于sql - SQL Server 中数字范围的通配符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34142885/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com