2013-06-11 98 views
0

2個語法之間有區別嗎?NOT LIKE和'[^ string]'之間的區別

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

我標記爲SQL Server。由於你的SQL不是標準的,我假設你想要一個DBMS的答案。 –

回答

3

一個將匹配一個空字符串。另一個不會。

而對於更復雜的模式,幾乎總是有所不同。特別是如果你開始利用雙重底片,例如如果你有一個NOT LIKE '%[^0-9]%'模式,沒有簡單的方法來減少它。

相關問題