Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.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,表1“标题” 身份证名称 1汤米·希尔菲格男士1790790黑色手表 表2“产品” 供应商名称 1790790 我需要找到表1中的行,其中表2供应商名称位于表1标题的某个位置,在本例中,“1790790”应该是预期结果 此查询已加载多年,但从未完成: SELECT * FROM `titles` t1 INNER JOIN product t2 ON t2.supplier_name LIKE CONCAT('%', t1.title, '%'); 这个查询哪里出错了?我认为左连接是您想要的

表1“标题” 身份证名称 1汤米·希尔菲格男士1790790黑色手表

表2“产品” 供应商名称 1790790

我需要找到表1中的行,其中表2供应商名称位于表1标题的某个位置,在本例中,“1790790”应该是预期结果

此查询已加载多年,但从未完成:

SELECT * FROM `titles` t1
INNER JOIN product t2 ON t2.supplier_name LIKE CONCAT('%', t1.title, '%');

这个查询哪里出错了?

我认为
左连接是您想要的

SELECT * FROM `titles` t1
LEFT JOIN product t2 ON t2.supplier_name LIKE CONCAT('%', t1.title, '%');

@lelio faieta为什么要编辑示例数据,现在无法理解?您是否尝试过省略
内部
,而只使用
JOIN
。。。如果它有助于找出
内部连接
连接
之间的区别,我认为
左连接
是您想要的,它只会以这种方式找到与“hilfiger”匹配的单词,而不是我正在查找的产品代码。上面的示例数据不会出现,尽管它应该出现。此示例返回0个结果:从产品t2中选择*供应商名称(从
titles
t1中选择CONCAT(“%”,t1.title,“%”),您需要将LIKE和IN组合在一起才能使最后一个有效谢谢。我现在有点受不了了。你能帮我把它们结合起来吗?我认为你不能把它们结合起来