SQL根据第一个表的数据从第二个表返回数据

时间:2017-02-13 17:54:29

标签: sql-server

我有两个没有链接在一起的SQL Server表(没有连接),我想根据第一个表的数据从第二个表中获取数据。在第一个表格中我有这个:

表1

id  name
----------
4   BOX-A 
8   PART-D

表2

id  name
------------
14  BOX-A1
25  BOX-A2
38  TOOL-A1
39  TOOL-A2
40  PART-D1
41  PART-D2

我想要做的是,对于表1中找到的每个名字,我想返回表2中的所有匹配项,所以最后我会得到类似的内容:

id  name
-----------
14  BOX-A1
25  BOX-A2
40  PART-D1
41  PART-D2

1 个答案:

答案 0 :(得分:2)

您可以使用joinexists

select t2.*
from table2 t2
where exists (select 1 from table1 t1 where t2.name like concat(t1.name, '%'));