这不会返回预期的结果。不知道如何逃避左方括号和右方括号,以便PATINDEX
将它们考虑在内。
有什么线索吗?非常感谢。
SELECT
PATINDEX('%[[SQLSERV]].DBNAME.DBO.[[[0-9a-zA-Z]]]%','ert[SQLSERV].DBNAME.DBO.[Table name]asdadsf')
这应该返回3,但返回0。
最佳答案
显然,不需要使用右括号:
SELECT
PATINDEX('%[[]SQLSERV].DBNAME.DBO.[[][0-9a-zA-Z _-]%','ert[SQLSERV].DBNAME.DBO.[Table name]asdadsf')
以上回报4。
此外,我们无法像使用LIKE一样自定义与PATINDEX结合使用的转义字符。
关于sql-server-2012 - 使用SQL Server在PATINDEX中转义方括号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32403133/