[^] (萬用字元 - 不相符的字元) (Transact-SQL)
比對不在方括弧 [^]
之間指定範圍或集合內的任何單一字元。 這些萬用字元可用於包含模式比對 (如 LIKE
和 PATINDEX
) 的字串比較中。
範例
簡單範例
下列範例會使用 [^] 運算子來尋找 Contact
資料表中前 5 個名字開頭都是 Al
且名字第三個字母不是 a
的人員。
-- Uses AdventureWorks SELECT TOP 5 FirstName, LastName FROM Person.Person WHERE FirstName LIKE 'Al[^a]%';
以下為結果集。
FirstName LastName --------- -------- Alex Adams Alexandra Adams Allison Adams Alisha Alan Alexandra Alexander
搜尋字元範圍
萬用字元集合可以包含單一字元或字元範圍,以及字元和範圍的組合。 下列範例會使用 [^] 運算子來尋找開頭並非字母或數字的字串。
SELECT [object_id], OBJECT_NAME(object_id) AS [object_name], name, column_id FROM sys.columns WHERE name LIKE '[^0-9A-z]%';
以下為結果集。
object_id object_name name column_id --------- ----------- ---- --------- 1591676718 JunkTable _xyz 1
轉貼至: https://docs.microsoft.com/zh-tw/sql/t-sql/language-elements/wildcard-character-s-not-to-match-transact-sql?view=sql-server-ver15