一尘不染

搜索用逗号分隔的值的mysql

mysql

我有2张桌子customersimap_emailscustomer表包含客户的电子邮件。

我正在使用PHP-IMAP从电子邮件服务器获取电子邮件,然后将其保存到数据库表imap_emails

imap_emails表有2个字段fromto并且to字段包含逗号分隔的值。

我需要获取从第一台邮件,然后搜索对tofromimap_emails

首先,我考虑了LIKE要搜索的条件,但我想拥有类似的东西FIND_IN_SET或其他东西。

我怎样才能更好地做到这一点?(由于某些原因,我无法在此表上使用关系)

请指教。


阅读 267

收藏
2020-05-17

共1个答案

一尘不染

基于FIND_IN_SET进行联接的示例

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

您没有说要如何缩小范围(即,如果一封电子邮件使用2个电子邮件地址,您是否希望两封电子邮件都被带回),所以在此阶段不能增加太多。

2020-05-17