PostgreSQL - klausa LIKE: Panduan Mesra untuk Pemula

Hai sana, para ahli basis data masa depan! Hari ini, kita akan melangkah ke dalam dunia yang menarik PostgreSQL, khususnya fokus pada klausa LIKE. Jangan khawatir jika Anda baru pada hal ini - saya akan menjadi panduan mesra Anda, dan kita akan berjalan langkah demi langkah. Pada akhir panduan ini, Anda akan menggunakan klausa LIKE seperti seorang pro!

PostgreSQL - Like Clause

Apa Itu Klausa LIKE?

Sebelum kita masuk ke detailnya, mari kita pahami apa itu klausa LIKE. Bayangkan Anda mencari buku di perpustakaan besar, tetapi Anda hanya ingat sebagian judulnya. Apakah tidak akan bagus jika Anda dapat mencari buku yang memiliki judul yang mirip? Itu tepatnya apa yang klausa LIKE lakukan di PostgreSQL - membantu Anda mencari data yang cocok dengan pola tertentu.

Klausa LIKE digunakan dalam klausa WHERE SQL untuk mencari pola tertentu dalam kolom. Itu seperti fungsi pencarian supercharge yang mengerti wildcard. Keren, kan?

Sintaks Klausa LIKE

Sekarang, mari kita lihat sintaks dasar klausa LIKE:

SELECT column1, column2, ...
FROM table_name
WHERE columnN LIKE pattern;

Jangan khawatir tentang ini! Kita akan pecahannya:

  1. SELECT column1, column2, ...: Ini tempat Anda menentukan kolom mana yang ingin Anda lihat dalam hasil Anda.
  2. FROM table_name: Ini adalah tabel yang Anda cari.
  3. WHERE columnN LIKE pattern: Ini adalah tempat magis terjadi. Anda memberitahu PostgreSQL untuk mencari data di columnN yang cocok dengan pola Anda.

Karakter Wildcard dalam Klausa LIKE

Sebelum kita masuk ke contoh, mari bicarakan tentang dua karakter khusus yang membuat klausa LIKE begitu kuat:

  1. % (tanda persen): Ini mewakili nol, satu, atau beberapa karakter.
  2. _ (garis bawah): Ini mewakili satu karakter.

Pikirkan mereka sebagai joker di permainan kartu - mereka dapat menggantikan karakter lain dalam pola pencarian Anda.

Contoh Klausa LIKE dalam Aksi

Ayo masuk ke beberapa contoh untuk melihat bagaimana klausa LIKE bekerja dalam konteks nyata. Bayangkan kita memiliki tabel books dengan kolom book_id, title, dan author.

Contoh 1: Mencari judul yang dimulai dengan 'The'

SELECT title
FROM books
WHERE title LIKE 'The%';

Query ini akan mengembalikan semua judul buku yang dimulai dengan 'The'. Tanda % setelah 'The' berarti "diikuti oleh sejumlah karakter apa pun".

Jadi, ini mungkin mengembalikan:

  • The Great Gatsby
  • The Catcher in the Rye
  • The Hobbit

Contoh 2: Mencari penulis dengan 'son' di dalam namanya

SELECT author
FROM books
WHERE author LIKE '%son%';

Query ini mencari penulis yang memiliki 'son' di mana saja dalam namanya. Tanda % sebelum dan setelah 'son' berarti "apa pun karakter sebelum dan setelah".

Ini bisa mengembalikan:

  • Jodi Picoult
  • Orson Scott Card
  • Jason Reynolds

Contoh 3: Mencari judul dengan tepat 5 karakter

SELECT title
FROM books
WHERE title LIKE '_____';

Di sini, kita menggunakan lima garis bawah untuk mencari judul yang tepat 5 karakter panjang.

Ini mungkin mengembalikan:

  • Dunes
  • Ender
  • Holes

Contoh 4: Pencarian case-insensitive

Secara default, klausa LIKE sensitif terhadap huruf besar kecil. Tetapi, apa bila Anda ingin mencari 'the' tanpa peduli apakah itu huruf besar atau kecil? PostgreSQL memiliki solusi:

SELECT title
FROM books
WHERE LOWER(title) LIKE '%the%';

Query ini mengkonversi semua judul ke huruf kecil sebelum mencari, jadi itu akan menemukan 'The', 'THE', 'the', dan kombinasi lainnya.

Teknik Klausa LIKE Lanjut

Sekarang Anda sudah menguasai dasarnya, mari lihat beberapa teknik lanjut.

Menggunakan NOT LIKE

kadang-kadang, Anda ingin mencari semua yang tidak cocok dengan pola. Itu adalah tempat NOT LIKE masuk:

SELECT title
FROM books
WHERE title NOT LIKE 'The%';

Ini akan mencari semua judul yang tidak dimulai dengan 'The'.

Menghindari Karakter Khusus

Apa bila Anda ingin mencari judul yang sebenarnya mengandung '%' atau '_'? Anda dapat menggunakan karakter pelengkap:

SELECT title
FROM books
WHERE title LIKE '50\% off%' ESCAPE '\';

Ini akan mencari judul yang dimulai dengan '50% off', menganggap '%' sebagai karakter literal, bukan wildcard.

Metode Klausa LIKE

Berikut adalah tabel yang menggabungkan metode yang berbeda yang kita dapat gunakan dengan klausa LIKE:

Metode Deskripsi Contoh
LIKE 'pattern' Cocok dengan pola tepat WHERE title LIKE 'The Great Gatsby'
LIKE '%pattern%' Cocok dengan pola di mana saja WHERE title LIKE '%Great%'
LIKE 'pattern%' Cocok dengan pola di awal WHERE title LIKE 'The%'
LIKE '%pattern' Cocok dengan pola di akhir WHERE title LIKE '%Gatsby'
LIKE 'pattern' Cocok dengan pola dengan wildcard karakter tunggal WHERE title LIKE 'he'
NOT LIKE 'pattern' Cocok dengan semua yang tidak cocok dengan pola WHERE title NOT LIKE 'The%'
ILIKE 'pattern' LIKE case-insensitive WHERE title ILIKE 'the%'

Kesimpulan

Dan begitu saja, teman-teman! Anda baru saja mengambil langkah pertama ke dalam dunia menarik klausa LIKE PostgreSQL. Ingat, latihan membuat sempurna, jadi jangan khawatir untuk mencoba pola dan kombinasi berbeda.

Klausa LIKE adalah alat kuat di dalam peralatan PostgreSQL Anda, memungkinkan Anda mencari data dengan fleksibilitas dan presisi. Apakah Anda mencari judul buku, nama pelanggan, atau data teks lainnya, klausa LIKE selalu mendampingi Anda.

Tetap menjelajahi, tetap menjalankan query, dan terutama, tetap bersenang-senang dengan basis data! Siapa tahu? Anda mungkin menjadi superhero basis data berikutnya. Sampai jumpa lagi, coding yang menyenangkan!

Credits: Image by storyset