gpt4 book ai didi

sql - 在 Oracle 中使用 NOT LIKE

转载 作者:行者123 更新时间:2023-12-05 08:31:08 25 4
gpt4 key购买 nike

这可能是个愚蠢的问题——我希望不是——但我仍然不明白为什么这段代码不在 Oracle 中运行而是在 MS SQL Server 中运行。

代码是:

SELECT DISTINCT CITY FROM STATION
WHERE CITY NOT LIKE '[AEIOUaeiou]%'
ORDER BY CITY ASC;

该代码在 SQL Server 中为我提供了所有不以元音开头的城市,但在 Oracle 中运行它时为我提供了所有城市。

这是为什么?

最佳答案

SQL Server 支持 LIKE 模式中的一小部分正则表达式。 Oracle 没有,但它通过 regexp_* 函数提供全面的正则表达式支持。

在这里,你可以使用regexp_like():

SELECT DISTINCT CITY FROM STATION
WHERE NOT REGEXP_LIKE(CITY, '^[aeiou]', 'i')
ORDER BY CITY ASC;

Regex ^[aeiou] 表示:字符串开头列出的字符之一('^' 代表)。第三个参数称为匹配参数:'i' 使搜索不区分大小写。

关于sql - 在 Oracle 中使用 NOT LIKE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60131574/

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