Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Mendapatkan E-mel dengan Cekap daripada Jadual MySQL dengan Nilai Dipisahkan Koma?

Bagaimanakah Saya Boleh Mendapatkan E-mel dengan Cekap daripada Jadual MySQL dengan Nilai Dipisahkan Koma?

DDD
DDDasal
2024-12-09 22:50:11359semak imbas

How Can I Efficiently Retrieve Emails from MySQL Tables with Comma-Separated Values?

Dapatkan E-mel daripada Jadual dengan Nilai Dipisahkan Koma dalam MySQL

Menyoal jadual pangkalan data dengan nilai dipisahkan koma boleh menimbulkan cabaran. Pertimbangkan senario di mana anda mempunyai dua jadual: pelanggan yang mengandungi e-mel pelanggan dan imap_emails dengan medan kepada yang memegang alamat e-mel yang dipisahkan koma. Untuk mengambil e-mel dan mencari terhadap medan ke dan dari, syarat LIKE tradisional mungkin tidak mencukupi.

Penyelesaian yang lebih cekap ialah menggunakan fungsi FIND_IN_SET. Fungsi ini menilai sama ada nilai tertentu terdapat dalam rentetan yang dipisahkan koma, membolehkan anda mengecilkan hasil carian dengan berkesan. Berikut ialah versi pertanyaan anda yang diubah suai menggunakan FIND_IN_SET:

SELECT *
FROM imap_emails
INNER JOIN customers
ON FIND_IN_SET(customers.email, imap_emails.to) > 0

Perhatikan bahawa pertanyaan ini mendapatkan semula e-mel yang alamat e-mel pelanggan dipaparkan dalam medan kepada imap_emails. Bergantung pada keperluan anda, anda boleh mengubah suai pertanyaan untuk memperhalusi kriteria carian dengan lebih lanjut.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mendapatkan E-mel dengan Cekap daripada Jadual MySQL dengan Nilai Dipisahkan Koma?. 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