Contoh PostgreSQL LIKE, Not Like, Wildcards (%, _)

Isi kandungan:

Anonim

Pengendali PostgreSQL LIKE membantu kami memadankan nilai teks dengan corak menggunakan kad liar. Adalah mungkin untuk memadankan ekspresi carian dengan ekspresi pola.

Sekiranya perlawanan berlaku, pengendali LIKE kembali benar. Dengan bantuan pengendali LIKE, anda boleh menggunakan wildcard dalam klausa WHERE SELECT, UPDATE, INSERT atau DELETE.

Dalam Tutorial PostgreSQL ini, anda akan mempelajari perkara berikut:

  • Kad liar
  • Sintaks
  • Menggunakan% wildcard
  • Menggunakan _ wildcard
  • Menggunakan Operator TIDAK
  • Menggunakan pgAdmin

Kad liar

Hanya ada dua wildcard yang dapat digunakan bersama

  • Tanda peratus (%)
  • Garis bawah (_)

Tanda peratus (%) digunakan untuk mewakili sifar, satu, atau banyak aksara atau nombor.

Wildcard garis bawah (_) digunakan untuk mewakili satu watak atau nombor. Simbol-simbol ini juga boleh digabungkan. Sekiranya pengendali LIKE tidak digunakan bersama dengan dua tanda ini, ia akan bertindak seperti operator sama.

Sintaks

Berikut adalah sintaks untuk pengendali LIKE:

expression LIKE pattern [ ESCAPE 'escape-character' ]

Ekspresi adalah ekspresi watak seperti lajur atau medan.

Corak adalah ekspresi watak dengan padanan corak.

Aksara melarikan diri adalah parameter pilihan. Ini memungkinkan untuk menguji keadaan literal watak wildcard seperti% dan _. Sekiranya tidak disediakan, \ akan digunakan sebagai watak pelarian.

Menggunakan% wildcard

Seperti yang kami nyatakan sebelumnya, tanda% sepadan dengan sifar, satu atau lebih aksara atau nombor. Pertimbangkan jadual berikut:

Buku:

Kami mahukan buku yang namanya seperti "Lear

… "Untuk mendapatkan hasilnya, kita dapat menjalankan perintah berikut:
SELECT *FROMBookWHEREname LIKE 'Lear%';

Ini akan mengembalikan perkara berikut:

Buku itu dijumpai.

Marilah kita mencari buku "oleh" dengan namanya:

SELECT *FROMBookWHEREname LIKE '%by%';

Ini akan mengembalikan perkara berikut:

Menggunakan _ wildcard

Seperti yang kami nyatakan sebelumnya, tanda _ mewakili satu watak atau nombor. Ini dapat digunakan seperti gambar di bawah:

SELECT *FROMBookWHEREname LIKE '_earn%';

Ini mengembalikan perkara berikut:

Berikut adalah contoh lain:

SELECT *FROMBookWHEREname LIKE '%Beginner_';

Ini mengembalikan perkara berikut:

Menggunakan Operator TIDAK

Apabila operator LIKE digabungkan dengan operator NOT, baris yang tidak sesuai dengan corak carian dikembalikan. Sebagai contoh, untuk melihat buku yang namanya tidak bermula dengan "post", kita boleh menjalankan perintah berikut:

SELECT *FROMBookWHEREname NOT LIKE 'Post%';

Ini mengembalikan perkara berikut:

Hanya satu buku yang memenuhi syarat carian. Mari kita lihat senarai nama buku yang tidak mempunyai kata "Dibuat":

SELECT *FROMBookWHEREname NOT LIKE '%Made%';

Ini mengembalikan perkara berikut:

3 baris memenuhi keadaan carian.

Menggunakan pgAdmin

Sekarang mari kita lihat bagaimana tindakan dapat dilakukan menggunakan pgAdmin.

Menggunakan% wildcard

Langkah 1) Log masuk ke akaun pgAdmin anda.

Langkah 2)

  1. Dari bar navigasi di sebelah kiri- Klik Pangkalan Data.
  2. Klik Demo.

Langkah 3) Taipkan pertanyaan dalam editor pertanyaan:

SELECT *FROMBookWHEREname LIKE 'Lear%';

Langkah 4) Klik butang Laksanakan.

Ia harus mengembalikan yang berikut:

Untuk mencari buku "oleh" dengan namanya:

Langkah 1) Taipkan perintah berikut dalam editor pertanyaan:

SELECT *FROMBookWHEREname LIKE '%by%';

Langkah 2) Klik butang Laksanakan.

Ia harus mengembalikan yang berikut:

Menggunakan _ wildcard

Langkah 1) Log masuk ke akaun pgAdmin anda.

Langkah 2)

  1. Dari bar navigasi di sebelah kiri- Klik Pangkalan Data.
  2. Klik Demo.

Langkah 3) Taipkan pertanyaan dalam editor pertanyaan:

SELECT *FROMBookWHEREname LIKE '_earn%';

Langkah 4) Klik butang Laksanakan.

Ia harus mengembalikan yang berikut:

Langkah 5) Untuk menjalankan contoh kedua:

  1. Taipkan pertanyaan berikut dalam editor pertanyaan:
    SELECT *FROMBookWHEREname LIKE '%Beginner_';
  2. Klik butang Laksanakan.

Ia harus mengembalikan yang berikut:

Menggunakan Operator TIDAK

Langkah 1) Log masuk ke akaun pgAdmin anda.

Langkah 2)

  1. Dari bar navigasi di sebelah kiri- Klik Pangkalan Data.
  2. Klik Demo.

Langkah 3) Untuk melihat semua buku yang namanya tidak dimulai dengan "Post", ketik pertanyaan di editor pertanyaan:

SELECT *FROMBookWHEREname NOT LIKE 'Post%';

Langkah 4) Klik butang Laksanakan.

Ia harus mengembalikan yang berikut:

Untuk melihat senarai buku yang namanya tidak mempunyai kata "Made":

Langkah 1) Taipkan pertanyaan berikut dalam editor pertanyaan:

SELECT *FROMBookWHEREname NOT LIKE '%Made%';

Langkah 2) Klik butang Laksanakan.

Ia harus mengembalikan yang berikut:

Ringkasan:

  • LIKE PostgreSQL digunakan dalam memadankan nilai teks dengan corak menggunakan wildcard.
  • Klausa LIKE membolehkan kami menggunakan wildcard dalam pernyataan SELECT, UPDATE, INSERT, atau DELETE.
  • % Wildcard sepadan dengan satu atau lebih nilai. Nilai boleh berupa angka atau aksara.
  • _ Wildcard sepadan dengan satu nilai. Nilai boleh berupa watak atau angka.
  • Operator LIKE boleh digabungkan dengan operator NOT untuk mengembalikan baris yang tidak sesuai dengan corak carian.

Muat turun Pangkalan Data yang digunakan dalam Tutorial ini