Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在MYSQL中查找结尾与另一个表的列匹配的列的所有行_Mysql - Fatal编程技术网

在MYSQL中查找结尾与另一个表的列匹配的列的所有行

在MYSQL中查找结尾与另一个表的列匹配的列的所有行,mysql,Mysql,好的,我有一个表:有一列的ad域,我想在另一个名为history的表中找到所有行,其中有3列:key、domain、time 我想做一些类似于 SELECT * FROM history WHERE domain LIKE "%{ALL_DOMAIN_COLUMN_FROM_ad-domains_TABLE}" 这可能吗 一些数据例如: 广告域名: 历史: 结果应该是 key domain ------------------------------------ 2 s

好的,我有一个表:有一列的ad域,我想在另一个名为history的表中找到所有行,其中有3列:key、domain、time

我想做一些类似于

SELECT * FROM history WHERE domain LIKE "%{ALL_DOMAIN_COLUMN_FROM_ad-domains_TABLE}"
这可能吗

一些数据例如:

广告域名:

历史:

结果应该是

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

您要查找的查询类似于:

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

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

您需要将
连接
上的两个表,如
条件。如果可能有多个匹配项,则需要对结果进行
DISTINCT
。或者,如果您不允许使用
JOIN
,您可以在存在的地方使用
。嗯,我从来没有想过在JOIN条件下使用LIKE。这就做到了(基本上,只需删除concat语句中的第一个“%”)。尽管我想,在2GB的桌面上运行这会花费大量的时间。
key      domain
------------------------------------
2        subads.ads.com
4        moreads.com
5        whoa.moreads.com
6        000.hi.whoa.moreads.com
SELECT * FROM history
INNER JOIN ad-domain ON history.domain LIKE CONCAT('%', ad-domain.domain, '%')