Partager via


like opérateur

S’applique à : case marquée oui Databricks SQL case marquée oui Databricks Runtime

Retourne la valeur true si str correspond à pattern avec escape.

Syntaxe

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

Arguments

  • str : Expression de type STRING.

  • pattern : Expression de type STRING.

  • escape : Littéral STRING à un seul caractère.

  • ANY, SOME ou ALL :

    S’applique à : case marquée oui Databricks SQL coche marquée oui Databricks Runtime

    Si ALL est spécifié, like retourne true si str correspond à tous les modèles, sinon retourne true s’il correspond à au moins un modèle.

Retours

BOOLEAN.

Le modèle est une chaîne de caractères qui est comparée littéralement, à l'exception des symboles spéciaux suivants :

  • _ correspond à n’importe quel caractère dans l'entrée (similaire à . dans les expressions régulières POSIX)
  • % correspond à zéro ou plusieurs caractères dans l'entrée (similaire à .* dans les expressions régulières POSIX).

Le caractère d'échappement par défaut est '\'. Si un caractère d’échappement précède un caractère spécial ou un autre caractère d’échappement, le caractère qui suit a une correspondance littérale. Aucun autre caractère ne peut être échappé.

Lors de l’utilisation de littéraux, utilisez raw-literal (préfixe r) pour éviter le traitement préalable du caractère d’échappement.

str NOT like ... équivaut à NOT(str like ...).

Exemples

> 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