Rumah >pangkalan data >tutorial mysql >Bolehkah MySQL Melakukan Carian LIKE dengan Corak Kad Liar Berbilang?

Bolehkah MySQL Melakukan Carian LIKE dengan Corak Kad Liar Berbilang?

Linda Hamilton
Linda Hamiltonasal
2025-01-20 13:16:09382semak imbas

Can MySQL Perform a LIKE Search with Multiple Wildcard Patterns?

LIKE dan Berbilang Corak Kad Liar MySQL

Masalah:

Bolehkah MySQL mengendalikan carian LIKE dengan cekap yang merangkumi beberapa corak kad bebas? Contohnya, mencari rentetan yang mengandungi ' 40%', ' 38%' dan ' 40%' secara serentak.

Penyelesaian:

MySQL tidak menawarkan fungsi LIKE IN() langsung. Walau bagaimanapun, penyelesaian yang sangat berkesan menggunakan Ungkapan Biasa (REGEXP). Ini membolehkan padanan berbilang corak dalam satu pertanyaan:

<code class="language-sql">SELECT * FROM fiberbox WHERE field REGEXP '1740|1938|1940';</code>

Pertanyaan ini mengimbas lajur fiberbox jadual field untuk baris yang mengandungi mana-mana corak yang ditentukan. Simbol | (paip) bertindak sebagai pengendali "atau", memadankan mana-mana baris yang mempunyai sekurang-kurangnya satu corak.

Pertimbangan Prestasi:

Prestasi relatif REGEXP berbanding berbilang LIKE pernyataan (mis., WHERE field LIKE '40%' OR field LIKE '38%' OR field LIKE '40%') sangat bergantung pada data dan pertanyaan tertentu. Adalah penting untuk menanda aras kedua-dua kaedah untuk menentukan pendekatan yang paling berkesan untuk set data dan keperluan pertanyaan anda.

Atas ialah kandungan terperinci Bolehkah MySQL Melakukan Carian LIKE dengan Corak Kad Liar Berbilang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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