SQL“赞”功能-澄清

时间:2020-04-07 08:53:22

标签: sql sql-server function sql-like azure-sql-managed-instance

在下面的查询中,结果为1。我的疑问是为什么第一个条件不满足?

我认为这两个案例完全相同,反之亦然,所以不应该满足第一个案例吗?

我在这里怎么了?

查询:

select case when '%G24F_T15%' like '%TK_G24F_T15_DITPG204A15WA%'
then 0
when '%TK_G24F_T15_DITPG204A15WA%' like '%G24F_T15%'
then 1
end as abc

1 个答案:

答案 0 :(得分:2)

像不是对称的,因此左侧的%符号按字面意义使用。也就是说,它们被视为%符号,而不是模式匹配命令。

help page中的语法:

-- Syntax for SQL Server and Azure SQL Database  

match_expression [ NOT ] LIKE pattern [ ESCAPE escape_character ]  

两侧不一样-只有右侧可以有模式匹配符号。