Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Memadankan Berbilang Perkataan dengan Cekap dalam MySQL Menggunakan LIKE atau REGEXP?

Bagaimana untuk Memadankan Berbilang Perkataan dengan Cekap dalam MySQL Menggunakan LIKE atau REGEXP?

DDD
Lepaskan: 2024-11-25 13:09:15
asal
276 orang telah melayarinya

How to Efficiently Match Multiple Words in MySQL Using LIKE or REGEXP?

Pemadanan Berbilang Perkataan dalam MySQL Menggunakan SELECT LIKE atau REGEXP

Pernyataan SELECT dalam SQL membenarkan untuk menapis rekod berdasarkan kriteria tertentu. Apabila berurusan dengan data berbilang perkataan, seperti nama produk atau perihalan, mungkin sukar untuk mencari rekod yang sepadan dengan berbilang perkataan.

LIKE lwn. REGEXP

MySQL menyediakan dua operator yang boleh digunakan untuk pemadanan kad bebas: LIKE dan REGEXP. LIKE menggunakan % kad bebas untuk memadankan sifar atau lebih aksara, manakala REGEXP membenarkan pemadanan ungkapan biasa yang lebih kompleks.

Memadankan Berbilang Perkataan dengan LIKE

Dalam contoh yang diberikan, pertanyaan SELECT name FROM table WHERE name LIKE '%Stylus 2100%' tidak mengembalikan sebarang hasil kerana ia tidak sepadan dengan kedua-dua perkataan dalam rekod. Untuk mencapai padanan berbilang perkataan dengan LIKE, anda boleh menggunakan pendekatan berikut:

SELECT name FROM `table` WHERE `name` LIKE '%Stylus%' AND `name` LIKE '%2100%'
Salin selepas log masuk

Pertanyaan ini akan memilih rekod yang mengandungi kedua-dua "Stylus" dan "2100" dalam sebarang susunan.

Memadankan Berbilang Perkataan dengan REGEXP

REGEXP menawarkan cara yang lebih berkuasa untuk memadankan berbilang perkataan dengan menggunakan ungkapan biasa. Pertanyaan berikut menggunakan ungkapan biasa untuk memadankan rekod yang mengandungi "Stylus" diikuti oleh satu atau lebih aksara diikuti dengan "2100":

SELECT name FROM `table` WHERE `name` REGEXP 'Stylus.+2100'
Salin selepas log masuk

Pertanyaan ini akan mengembalikan rekod dengan nilai "Stylus Photo 2100" .

Atas ialah kandungan terperinci Bagaimana untuk Memadankan Berbilang Perkataan dengan Cekap dalam MySQL Menggunakan LIKE atau REGEXP?. 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