php - 使用逗号分隔值 mysql 进行搜索

标签 php mysql

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

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

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

我需要从第一个表中获取电子邮件,然后在 imap_emails 上搜索 tofrom

首先,我考虑了 LIKE 搜索条件,但我想要类似 FIND_IN_SET 或其他内容。

我怎样才能以更好的方式实现这一点? (由于某些原因,我无法在该表上使用关系)

请指教。

最佳答案

基于 FIND_IN_SET 进行联接的示例

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

您没有说明您希望如何缩小范围(即,如果一封电子邮件使用 2 个电子邮件地址,您是否希望同时返回两封电子邮件),因此现阶段无法添加太多内容。

关于php - 使用逗号分隔值 mysql 进行搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16208565/

相关文章:

php - wordpress fishpig magento 安装 - getPostListHtml()

php - UTF-8 符号显示错误

php - 用户登录报表需要用户最新的登录记录

php - 传递数据 MySQL -> PHP -> JSON

php - 在每个 php 页面的顶部包含 require ("db.php") 是否会减慢速度?

php - HTML 搜索栏区分大小写

javascript - 获取一个数据表的值到另一个数据表

php - 根据2个参数检查MySQL记录是否存在

mysql - 如何恢复MySQL数据库中的错误更新?

php - 我使用循环填充 <select> 选项,如何使选择框显示当前选项而不是最高值?