首页 > 解决方案 > 在MYSQL中查找具有结尾与另一个表的列匹配的列的所有行

问题描述

好的,我有表:包含一列的广告域,我想在另一个名为 history 的表中查找所有行,其中包含 3 列:键、域、时间。

我想做类似的事情

SELECT * FROM history WHERE domain LIKE "%{ALL_DOMAIN_COLUMN_FROM_ad-domains_TABLE}"

这可能吗?

一些数据例如:

广告域:

domain
------
ads.com
moreads.com
gottahaveads.com

历史:

key      domain
-----------------------------------
1        google.com
2        subads.ads.com
3        gmail.com
4        moreads.com
5        whoa.moreads.com
6        000.hi.whoa.moreads.com
7        ads.com.taco

结果应该是

key      domain
------------------------------------
2        subads.ads.com
4        moreads.com
5        whoa.moreads.com
6        000.hi.whoa.moreads.com

标签: mysql

解决方案


您要查找的查询类似于:

SELECT * FROM history
INNER JOIN ad-domain ON history.domain LIKE CONCAT('%', ad-domain.domain, '%')

是有关该主题的更多信息。


推荐阅读