2种语法之间有什么区别吗?
SELECT [dbo].[Employees].[FirstName]
FROM [dbo].[Employees]
WHERE [dbo].[Employees].[FirstName] NOT LIKE '[a-c]%';
SELECT [dbo].[Employees].[FirstName]
FROM [dbo].[Employees]
WHERE [dbo].[Employees].[FirstName] LIKE '[^a-c]%';
答案 0 :(得分:3)
一个将匹配一个空字符串。另一个不会。
对于更复杂的模式,几乎总是存在差异。特别是如果你开始利用双阴性,例如如果你有一个NOT LIKE '%[^0-9]%'
模式,就没有简单的方法来减少它。