ilike Operator

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

Menghasilkan nilai true jika str sesuai pattern dengan escape yang tidak peka huruf besar/kecil.

Sintaks

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

Argumen

  • str: Ekspresi STRING dalam UTF8_BINARY atau UTF8_LCASE kolasi.

  • pattern: Ekspresi STRING .

  • escape: Satu karakter STRING harfiah.

  • ANY atau SOME atau ALL:

    Jika ALL ditentukan, maka [NOT] ilike mengembalikan true jika str sesuai (atau tidak sesuai) dengan semua pola. Jika tidak, atau jika ANY atau SOME ditentukan, maka [NOT] ilike mengembalikan true jika str cocok (atau tidak cocok) setidaknya satu pola.

Mengembalikan

BOOLEAN.

Polanya adalah string yang dicocokkan secara harfiah dan tidak peka huruf besar/kecil, dengan pengecualian untuk 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 dan dengan cara yang tidak sensitif huruf. Melupakan karakter lain tidak diperbolehkan.

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

str NOT ilike ... setara dengan NOT(str ilike ...).

Contoh

> SELECT ilike('Spark', '_PARK');
true

> SELECT r'%SystemDrive%\users\John' ilike r'\%SystemDrive\%\\Users%';
true

> SELECT r'%SystemDrive%\users\John' ilike '\%SystemDrive\%\\\\Users%';
true

> SELECT '%SystemDrive%/Users/John' ilike '/%SystemDrive/%//users%' ESCAPE '/';
true

> SELECT like('Spock', '_pArk');
false

> SELECT 'Spark' like SOME ('_ParK', '_Ock')
true

> SELECT 'Spark' like ALL ('_ParK', '_Ock')
false