Bagaimanakah Saya Boleh Mencari Nilai Tertentu dengan Cekap dalam Medan Dipisahkan Koma dalam MySQL?

Patricia Arquette
Lepaskan: 2024-11-08 01:26:02
asal
906 orang telah melayarinya

How Can I Efficiently Search for a Specific Value in a Comma-Separated Field in MySQL?

Mencari Nilai Dipisahkan Koma dalam MySQL

Pertemuan dengan jadual yang mengandungi senarai dipisahkan koma sebagai rujukan kepada jadual lain adalah perkara biasa. Situasi ini, walaupun diakui sebagai tidak menguntungkan, menimbulkan cabaran apabila cuba mencari dalam medan menggunakan pertanyaan SUKA.

Apabila cuba mencari nilai tertentu, menggunakan pertanyaan SUKA seperti '%1%' boleh mengakibatkan banyak padanan positif disebabkan julat lazim (10-20) di mana ID ini berada. Untuk menangani perkara ini, seseorang mungkin mempertimbangkan untuk mencari padanan sebagai %,1,%. Walau bagaimanapun, pendekatan ini gagal untuk mengambil kira ID pada permulaan atau akhir senarai.

Penyelesaian yang berdaya maju melibatkan penggunaan fungsi FIND_IN_SET, yang membolehkan pengguna mencari nilai dalam medan yang dipisahkan koma. Dengan menggunakan FIND_IN_SET('1', medan), pertanyaan mengenal pasti rekod yang mengandungi nilai '1' dalam medan. Fungsi ini secara berkesan menyelesaikan isu mencari nilai tertentu dalam senarai dipisahkan koma dan meningkatkan ketepatan pertanyaan pangkalan data.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencari Nilai Tertentu dengan Cekap dalam Medan Dipisahkan Koma dalam 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