gpt4 book ai didi

sql - REGEXP 错误 - 在预期条件的上下文中指定的非 bool 类型的表达式,接近 'REGEXP'

转载 作者:行者123 更新时间:2023-12-03 12:50:49 25 4
gpt4 key购买 nike

我目前正在学习 SQL 并使用 SSMS 2017。我不明白为什么在使用 REGEXP 语法时出现错误,它似乎适用于其他任何人:

SELECT *
FROM List
WHERE Name REGEXP '^.[a-e].*'
ORDER BY Name;

Error: An expression of non-boolean type specified in a context where a condition is expected, near 'REGEXP'.

最佳答案

您的错误是 SQL Server 错误,而不是 MySQL 错误。 SMSS 是 Microsoft 的产品,通常与 SQL Server 一起使用。因此,我断定您正在学习 SQL Server。

SQL Server 不支持 REGEXP 运算符。但它确实扩展了 LIKE 模式匹配。你可以做你想做的:

SELECT l.*
FROM List l
WHERE l.Name LIKE '%[a-e]%'
ORDER BY Name;

还值得注意的是,您的 REGEXP 模式比必要的更复杂。正则表达式匹配字符串中的任何位置,因此这会找到包含字母“a”到“e”的任何名称:

    WHERE Name REGEXP '[a-e]'

关于sql - REGEXP 错误 - 在预期条件的上下文中指定的非 bool 类型的表达式,接近 'REGEXP',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51009978/

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