LIKE - AWS Clean Rooms

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

LIKE

LIKEOperator membandingkan ekspresi string, seperti nama kolom, dengan pola yang menggunakan karakter wildcard% (percent) dan _ (underscore). LIKEpencocokan pola selalu mencakup seluruh string. Untuk mencocokkan urutan di mana saja dalam string, pola harus dimulai dan diakhiri dengan tanda persen.

LIKEpeka huruf besar/kecil; ILIKE tidak peka huruf besar/kecil.

Sintaks

expression [ NOT ] LIKE | ILIKE pattern [ ESCAPE 'escape_char' ]

Argumen

ekspresi

Ekspresi karakter UTF -8 yang valid, seperti nama kolom.

LIKE | ILIKE

LIKEmelakukan kecocokan pola peka huruf besar/kecil. ILIKEmelakukan kecocokan pola case-insensitive untuk karakter single-byte UTF -8 (). ASCII Untuk melakukan kecocokan pola case-insensitive untuk karakter multibyte, gunakan LOWERfungsi pada ekspresi dan pola dengan kondisi. LIKE

Berbeda dengan predikat perbandingan, seperti = dan <>, dan LIKE ILIKE predikat tidak secara implisit mengabaikan spasi tambahan. Untuk mengabaikan spasi tambahan, gunakan RTRIM atau secara eksplisit melemparkan kolom keCHAR. VARCHAR

~~Operator setara denganLIKE, dan ~~* setara denganILIKE. Juga !~~* operator !~~ dan setara dengan NOT LIKE dan NOTILIKE.

pola

Ekspresi karakter UTF -8 yang valid dengan pola yang akan dicocokkan.

escape_char

Ekspresi karakter yang akan lolos dari karakter metakarakter dalam pola. Defaultnya adalah dua garis miring terbalik ('\\').

Jika pola tidak mengandung metakarakter, maka pola hanya mewakili string itu sendiri; dalam hal ini LIKE bertindak sama dengan operator sama dengan.

Salah satu ekspresi karakter bisa CHAR atau tipe VARCHAR data. Jika mereka berbeda, AWS Clean Rooms mengkonversi pola ke tipe data ekspresi.

LIKEmendukung metakarakter pencocokan pola berikut:

Operator Deskripsi
% Cocokkan dengan urutan nol atau lebih karakter.
_ Cocokkan karakter tunggal apa pun.

Contoh

Tabel berikut menunjukkan contoh pencocokan pola menggunakanLIKE:

Ekspresi Pengembalian
'abc' LIKE 'abc' True
'abc' LIKE 'a%' Benar
'abc' LIKE '_B_' Salah
'abc' ILIKE '_B_' Benar
'abc' LIKE 'c%' False

Contoh berikut menemukan semua kota yang namanya dimulai dengan “E”:

select distinct city from users where city like 'E%' order by city; city --------------- East Hartford East Lansing East Rutherford East St. Louis Easthampton Easton Eatontown Eau Claire ...

Contoh berikut menemukan pengguna yang nama belakangnya berisi “sepuluh”:

select distinct lastname from users where lastname like '%ten%' order by lastname; lastname ------------- Christensen Wooten ...

Contoh berikut menemukan kota yang karakter ketiga dan keempat adalah “ea”. Perintah ini digunakan ILIKE untuk menunjukkan ketidakpekaan kasus:

select distinct city from users where city ilike '__EA%' order by city; city ------------- Brea Clearwater Great Falls Ocean City Olean Wheaton (6 rows)

Contoh berikut menggunakan string escape default (\\) untuk mencari string yang menyertakan “start_” (teks start diikuti oleh garis bawah): _

select tablename, "column" from my_table_def where "column" like '%start\\_%' limit 5; tablename | column -------------------+--------------- my_s3client | start_time my_tr_conflict | xact_start_ts my_undone | undo_start_ts my_unload_log | start_time my_vacuum_detail | start_row (5 rows)

Contoh berikut menentukan '^' sebagai karakter escape, kemudian menggunakan karakter escape untuk mencari string yang menyertakan “start_” (teks start diikuti dengan garis bawah): _

select tablename, "column" from my_table_def where "column" like '%start^_%' escape '^' limit 5; tablename | column -------------------+--------------- my_s3client | start_time my_tr_conflict | xact_start_ts my_undone | undo_start_ts my_unload_log | start_time my_vacuum_detail | start_row (5 rows)

Contoh berikut menggunakan ~~* operator untuk melakukan pencarian case-insensitive (ILIKE) untuk kota yang dimulai dengan “Ag”.

select distinct city from users where city ~~* 'Ag%' order by city; city ------------ Agat Agawam Agoura Hills Aguadilla