Operador like
Aplica-se a: SQL do Databricks Databricks Runtime
Retorna true se str
corresponde a pattern
com escape
.
Sintaxe
str [ NOT ] like ( pattern [ ESCAPE escape ] )
str [ NOT ] like { ANY | SOME | ALL } ( [ pattern [, ...] ] )
Argumentos
str
: uma expressão de CADEIA DE CARACTERES.pattern
: uma expressão de CADEIA DE CARACTERES.escape
: uma literal de STRING de caractere único.ANY
,SOME
ouALL
:Aplica-se a: SQL do Databricks Databricks Runtime
Se
ALL
é especificado,like
retornatrue
sestr
corresponde a todos os padrões. Caso contrário, retornatrue
se ele corresponde a, pelo menos, um padrão.
Retornos
Um BOOLEAN
.
O padrão é uma cadeia de caracteres que tem correspondência de forma literal, com exceção dos seguintes símbolos especiais:
_
corresponde a qualquer caractere na entrada (semelhante a.
em expressões regulares do POSIX)%
corresponde a nenhum ou mais caracteres na entrada (semelhantes a.*
em expressões regulares do POSIX).
O caractere de escape padrão é o '\'
.
Se um caractere de escape precede um símbolo especial ou outro caractere de escape, o caractere seguinte será correspondido literalmente.
Não é válido para escape de qualquer outro caractere.
Ao usar literais, use raw-literal
(prefixo r
) para evitar o pré-processamento do caractere de escape.
str NOT like ...
é equivalente a NOT(str like ...)
.
Exemplos
> 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