Rumah > Operasi dan penyelenggaraan > operasi dan penyelenggaraan linux > Memperkenalkan operasi sertakan dalam pertanyaan Oracle

Memperkenalkan operasi sertakan dalam pertanyaan Oracle

PHPz
Lepaskan: 2023-04-17 10:14:54
asal
4139 orang telah melayarinya

Oracle ialah sistem pengurusan pangkalan data yang berkuasa, dan pernyataan pertanyaannya boleh membantu kami mendapatkan data dengan cekap. Dalam pembangunan sebenar, kita selalunya perlu menanyakan data yang mengandungi kata kunci tertentu. Artikel ini akan memperkenalkan operasi sertakan dalam pertanyaan Oracle.

1. pernyataan LIKE

Dalam Oracle, salah satu cara paling asas untuk melaksanakan operasi kemasukan adalah melalui pernyataan LIKE. LIKE boleh menambah aksara kad bebas pada pertanyaan untuk menggantikan beberapa aksara atau jujukan aksara. Sebagai contoh, pernyataan pertanyaan SQL berikut akan mengembalikan semua rekod yang mengandungi "an":

SELECT * FROM table_name WHERE column_name LIKE '%an%';
Salin selepas log masuk

% bermakna ia boleh menggantikan mana-mana aksara atau mana-mana jujukan aksara. Syarat pertanyaan di sini merujuk kepada semua rekod yang mengandungi subrentetan "an" dalam medan column_name. Ambil perhatian bahawa klausa LIKE adalah lebih cekap daripada ungkapan biasa.

2. MENGANDUNGI pernyataan

Oracle menyediakan kenyataan MENGANDUNGI untuk operasi kemasukan yang lebih cekap. CONTAINS memerlukan penggunaan indeks teks penuh, jadi indeks perlu dibuat terlebih dahulu.

Berikut ialah contoh mencipta indeks:

CREATE INDEX idx_table_name ON table_name(column_name) INDEXTYPE IS CTXSYS.CONTEXT;
Salin selepas log masuk

Dalam contoh di atas, kami mencipta indeks bernama idx_table_name, yang melaksanakan indeks teks penuh pada column_name lajur table_name table, Anda boleh menggunakan CONTAINS untuk membuat pertanyaan.

CONTAINS menyokong pelbagai bentuk pertanyaan, termasuk pertanyaan istilah tunggal, pertanyaan frasa, pertanyaan anggaran kosa kata, dsb. Berikut ialah contoh pertanyaan mudah:

SELECT * FROM table_name WHERE CONTAINS(column_name, 'an') > 0;
Salin selepas log masuk

Ayat ini bermaksud menanyakan semua rekod yang mengandungi "an" dalam jadual table_name. Fungsi CONTAINS mengembalikan nilai integer Jika nilai ini lebih besar daripada 0, ini bermakna hasil pertanyaan telah diperolehi.

3. Kenyataan REGEXP_LIKE

Selain pernyataan SUKA dan MENGANDUNGI, Oracle juga menyediakan kaedah pertanyaan ungkapan biasa - REGEXP_LIKE.

Ekspresi biasa ialah alat pemadanan rentetan yang berkuasa, dilaksanakan dalam Oracle melalui fungsi REGEXP_LIKE. Berikut ialah contoh menggunakan ungkapan biasa untuk pertanyaan kemasukan:

SELECT * FROM table_name WHERE REGEXP_LIKE(column_name, 'an.*');
Salin selepas log masuk

Pertanyaan ini akan mengembalikan semua rekod bermula dengan "an" dalam column_name. Antaranya, "." mewakili mana-mana aksara, dan "*" mewakili 0 atau lebih aksara. Jika anda ingin memadankan "an" yang tepat, anda boleh menggunakan "b" untuk mengenal pasti sempadan perkataan.

Ringkasan

Di atas memperkenalkan tiga kaedah tentang cara melaksanakan operasi kemasukan dalam Oracle. Kaedah yang paling asas ialah menggunakan LIKE Jika anda memerlukan operasi yang lebih cekap, anda boleh menggunakan CONTAINS dan ungkapan biasa.

Dalam proses pembangunan sebenar, kaedah pertanyaan perlu dipilih mengikut situasi tertentu. Satu perkara yang perlu diambil perhatian ialah MENGANDUNGI dan pertanyaan ungkapan biasa memerlukan penggunaan indeks carian teks penuh. Oleh itu, jika jumlah data tidak terlalu besar, pernyataan LIKE mungkin mencukupi.

Atas ialah kandungan terperinci Memperkenalkan operasi sertakan dalam pertanyaan Oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan