在MySQL 中搜尋逗號分隔值
在將資料以逗號分隔值(CSV) 形式儲存在MySQL 表中的情況下,尋找特定的事件可能會帶來挑戰。此問題探討了電子郵件儲存在具有多個收件者的表中的情況。目前的任務是使用 imap_emails 表根據寄件者或收件者搜尋電子郵件,該表將寄件者和收件者資訊儲存為 CSV。
對於此搜索,使用簡單的 LIKE 條件可能不夠。相反,問題建議採用更精細的方法,例如 FIND_IN_SET 或類似的函數。本文將深入研究解決這項挑戰的替代解決方案。
一種有效的方法是使用 FIND_IN_SET 函數在客戶表和 imap_emails 表之間執行聯結。此方法可讓您在 imap_emails 表中儲存的 CSV 中搜尋特定值。
示範此方法的範例程式碼:
SELECT * FROM imap_emails INNER JOIN customers ON FIND_IN_SET(customers.email, imap_emails.to) > 0
此查詢將傳回imap_emails 表中的所有行,其中客戶表中的電子郵件列位於imap_emails 的逗號分隔列中
請注意,此範例僅檢查to 列中的符合項目。根據所需的行為,您可以修改查詢以在 from 欄位或兩者中搜尋符合項目。這種靈活性提供了對特定搜尋要求的適應性。
以上是如何在 MySQL 的逗號分隔值中有效率地搜尋電子郵件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!