首页 > 解决方案 > 如果字符串与数据库中的部分匹配,如何检查 MySQL?

问题描述

我想做一种黑名单,所以我存储在我的数据库中

id|value
-----------
1|test.com
2|example@
3|@another.
...

现在我正在寻找最快的方法来检查给定的字符串(例如电子邮件地址)是否与数据库中的部分值匹配。

例如 my@mail.com -> db 中没有结果 -> 没有垃圾邮件 example@mail.com -> 与 ID2 匹配 -> 垃圾邮件 ...

有没有办法做到这一点,内幕,MySQL 语句?

目前我只看到将所有值加载到数组中的方法并检查一下,但这种方式需要大量资源,而且速度非常慢。

非常感谢。

标签: phpmysql

解决方案


像这样使用查询:

SELECT * FROM `table_name` WHERE `value` LIKE '%emailadress%';

推荐阅读