Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к:SQL Server
База данных Azure SQL
Управляемый экземпляр Azure SQL
База данных SQL в предварительной версии Microsoft Fabric
Соответствует любому одному символу, не указанному в диапазоне или заданном между квадратными скобками [^]
. Эти символы-шаблоны могут использоваться в тех операциях сравнения строк, которые задействуют соответствие шаблону, например LIKE
или PATINDEX
.
Examples
Примеры кода в этой статье используют базу данных образца AdventureWorks2022
или AdventureWorksDW2022
, которую можно скачать с домашней страницы образцов и проектов сообщества Microsoft SQL Server и.
Ответ. Базовый пример
В следующем примере оператор используется [^]
для поиска пяти лучших пользователей в Contact
таблице, у которых есть имя, которое начинается Al
с и имеет третью букву, которая не является буквой a
.
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