Bagikan melalui


like operator

Berlaku untuk: centang ditandai ya Databricks SQL centang ditandai ya Databricks Runtime

Menampilkan nilai true jika str cocok dengan pattern dengan escape.

Sintaks

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

Argumen

  • str: Ekspresi STRING.

  • pattern: Ekspresi STRING.

  • escape: Satu karakter harfiah STRING.

  • ANY atau SOME atau ALL:

    Berlaku untuk: centang ditandai ya Databricks SQL centang ditandai ya Databricks Runtime

    Jika ALL ditentukan maka like menampilkan true jika str cocok dengan semua pola, jika tidak, akan menampilkan true jika cocok dengan setidaknya satu pola.

Mengembalikan

BOOLEAN.

Polanya adalah string yang dicocokkan secara harfiah, dengan pengecualian simbol khusus berikut:

  • _ cocok dengan satu karakter apa pun di input (mirip dengan . dalam ekspresi reguler POSIX)
  • % cocok dengan nol karakter atau lebih dalam input (mirip .* dalam regex POSIX).

Karakter escape defaultnya adalah '\'. Jika karakter escape mendahului simbol khusus atau karakter escape lainnya, karakter berikut ini dicocokkan secara harfiah. Melupakan karakter lain tidak diperbolehkan.

Saat menggunakan literal, gunakan raw-literal (r awalan) untuk menghindari pra-pemrosesan karakter escape.

str NOT like ... setara dengan NOT(str like ...).

Contoh

> 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