2021年8月27日 星期五

[^] (萬用字元 - 不相符的字元) (Transact-SQL)

 

[^] (萬用字元 - 不相符的字元) (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

沒有留言:

張貼留言