Udostępnij za pośrednictwem


like operator

Dotyczy: zaznacz pole wyboru oznaczone jako tak Databricks SQL zaznacz pole wyboru oznaczone jako tak Databricks Runtime

Zwraca wartość true, jeśli str jest zgodna pattern z .escape

Składnia

str [ NOT ] like ( pattern [ ESCAPE escape ] )
str [ NOT ] like { ANY | SOME | ALL } ( [ pattern [, ...] ] )

Argumenty

  • str: wyrażenie STRING.

  • pattern: wyrażenie STRING.

  • escape: literał CIĄGU z jednym znakiem.

  • ANY lub SOME ALL:

    Dotyczy: zaznacz pole wyboru oznaczone jako tak Databricks SQL zaznacz pole wyboru oznaczone jako tak Databricks Runtime

    Jeśli ALL zostanie określony like , zwraca true wartość , jeśli str pasuje do wszystkich wzorców, w przeciwnym razie zwraca true wartość , jeśli pasuje do co najmniej jednego wzorca.

Zwraca

Klasa BOOLEAN.

Wzorzec jest ciągiem, który jest dopasowywany dosłownie, z wyjątkiem następujących symboli specjalnych:

  • _ pasuje do dowolnego znaku w danych wejściowych (podobnie jak . w wyrażeniach regularnych POSIX)
  • % Dopasuje zero lub więcej znaków w danych wejściowych (podobnie jak .* w wyrażeniach regularnych POSIX).

Domyślnym znakiem '\'ucieczki jest . Jeśli znak ucieczki poprzedza specjalny symbol lub inny znak ucieczki, następujący znak jest dopasowywany dosłownie. Jest to nieprawidłowe, aby uniknąć dowolnego innego znaku.

W przypadku używania literałów użyj raw-literal (r prefiksu), aby uniknąć wstępnego przetwarzania znaków ucieczki.

str NOT like ... jest równoważne z NOT(str like ...).

Przykłady

> 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