Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Оператор
Область применения:
Databricks SQL
Databricks Runtime
Возвращается true, если str совпадает с pattern и escape.
Синтаксис
str [ NOT ] like ( pattern [ ESCAPE escape ] )
str [ NOT ] like { ANY | SOME | ALL } ( [ pattern [, ...] ] )
Аргументы
str:STRINGвыражение.pattern:STRINGвыражение.escape: один символьныйSTRINGлитерал.ANY,SOMEилиALL:Область применения:
Databricks SQL
Databricks RuntimeЕсли
ALLуказано, то [NOT] возвращаетtrue, еслиstrсовпадает (или не совпадает) со всеми шаблонами. В противном случае или если указаноANYилиSOME, то [NOT] возвращаетtrue, еслиstrсовпадает (или не совпадает) хотя бы с одним шаблоном.
Возвраты
BOOLEAN.
pattern — это шаблон, строка, которая сравнивается по буквам, за исключением следующих специальных символов:
-
_соответствует любому одному символу во входных данных (аналогично.в регулярных выражениях POSIX); -
%соответствует нулю значений и более во входных данных (аналогично.*в регулярных выражениях POSIX).
По умолчанию в качестве escape-символа используется '\'.
Если escape-символ предшествует специальному символу или другому escape-символу, следующий знак сопоставляется буквально.
Недопустимо экранировать любые другие знаки.
При использовании литерала используйте raw-literal (r префикс) для предотвращения предварительной обработки символов escape-символа.
str NOT like ... эквивалентна NOT(str like ...).
Как определено стандартом SQL, LIKE всегда чувствительно к конечным пробелам, даже если колlation нечувствительна к конечным пробелам.
Для ненулевого
Применяется к:
Databricks SQL
Databricks Runtime 17.2 и более поздних версий
Следующие коллации поддерживаются LIKE:
UTF8_BINARYUTF8_BINARY_RTRIMUTF8_LCASEUTF8_LCASE_RTRIM
Для других параметров сортировки используется contains, startswithили ends_with.
Примеры
> SELECT like('Spark', '_park');
true
> SELECT r'%SystemDrive%\Users\John' like r'%SystemDrive%\\Users%';
true
-- When not using raw literals, the escape character must be escaped.
> SELECT r'%SystemDrive%\Users\John' like '%SystemDrive%\\\\Users%';
true
> SELECT '%SystemDrive%/Users/John' like '/%SystemDrive/%//Users%' ESCAPE '/';
true
> SELECT like('Spock', '_park');
false
> SELECT 'Spark' like SOME ('_park', '_ock')
true
> SELECT 'Spark' like ALL ('_park', '_ock')
false
-- like is always trailing blank sensitive
> SELECT 'Spark' COLLATE UTF8_BINARY_RTRIM like 'Spark ';
false