[^] (Подстановочный знак — символы не совпадают) (Transact-SQL)
Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure
Сопоставляется с любым отдельным символом, находящимся вне диапазона или набора, указанного в квадратных скобках [^]
. Эти символы-шаблоны могут использоваться в тех операциях сравнения строк, которые задействуют соответствие шаблону, например LIKE
или PATINDEX
.
Примеры
A. Простой пример
В следующем примере оператор [^] используется для поиска первых пяти лиц в таблице Contact
, имена которых начинаются с 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
См. также
LIKE (Transact-SQL)
PATINDEX (Transact-SQL)
% (подстановочный знак — символы для сопоставления) (Transact-SQL)
[ ] (подстановочный знак — символы для сопоставления) (Transact-SQL)
_ (подстановочный знак — совпадение с одним символом) (Transact-SQL)