Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Memadankan Pelbagai Nilai dengan cekap menggunakan LIKE dalam Pertanyaan MySQL?

Bagaimana untuk Memadankan Pelbagai Nilai dengan cekap menggunakan LIKE dalam Pertanyaan MySQL?

Barbara Streisand
Lepaskan: 2025-01-06 00:48:39
asal
564 orang telah melayarinya

How to Efficiently Match Multiple Values Using LIKE in MySQL Queries?

Pertanyaan MySQL untuk Memadankan Pelbagai Nilai Menggunakan LIKE

Apabila berurusan dengan pertanyaan MySQL yang melibatkan berbilang nilai dalam keadaan LIKE, satu cabaran biasa ialah memadankan baris yang mengandungi mana-mana nilai yang ditentukan. Dalam kes khusus ini, pertanyaan cuba mencari rekod di mana medan minat mengandungi sama ada 'sukan' atau 'pub' atau kedua-duanya. Walau bagaimanapun, pertanyaan yang diberikan gagal menghasilkan keputusan yang diharapkan.

Penyelesaian Alternatif

Untuk menangani isu ini, terdapat beberapa penyelesaian alternatif:

1. Menggunakan Operator OR:

Operator OR boleh digunakan untuk menyambungkan berbilang keadaan LIKE:

WHERE interests LIKE '%sports%' OR interests LIKE '%pub%'
Salin selepas log masuk

2. Menggunakan Operator REGEXP:

Pengendali REGEXP menyediakan cara yang lebih ringkas dan cekap untuk memadankan berbilang nilai:

WHERE interests REGEXP 'sports|pub'
Salin selepas log masuk

Dalam kes ini, REGEXP akan memadankan baris yang mengandungi sama ada 'sukan ' atau 'pub' dalam medan minat.

3. Menggunakan Operator IN:

Pilihan lain ialah menggunakan operator IN untuk menyemak berbilang nilai dalam set:

WHERE interests IN ('sports', 'pub')
Salin selepas log masuk

Penjelasan REGEXP

REGEXP operator menggunakan corak ungkapan biasa untuk memadankan nilai yang ditentukan. Dalam kes ini, corak 'sukan|pub' sepadan dengan mana-mana rentetan yang mengandungi sama ada 'sukan' atau 'pub'.

The '|' simbol dalam ungkapan biasa mewakili OR logik, menunjukkan bahawa corak sepadan jika salah satu daripada dua nilai hadir dalam rentetan input.

Kesimpulan

Menggunakan operator OR, operator REGEXP, atau Operator IN dalam kombinasi dengan keadaan LIKE memberikan lebih fleksibiliti dan kecekapan apabila memadankan berbilang nilai dalam pertanyaan MySQL.

Atas ialah kandungan terperinci Bagaimana untuk Memadankan Pelbagai Nilai dengan cekap menggunakan LIKE dalam Pertanyaan MySQL?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan