Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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
Sql 如何将LIKE语句与其他字段中的多个值一起使用?_Sql_Sql Server 2008_Compare_Sql Like - Fatal编程技术网

Sql 如何将LIKE语句与其他字段中的多个值一起使用?

Sql 如何将LIKE语句与其他字段中的多个值一起使用?,sql,sql-server-2008,compare,sql-like,Sql,Sql Server 2008,Compare,Sql Like,我想选择字段包含其他字段值的所有记录。我该怎么做?下面是我正在尝试的代码。 select field1 , field2, field3 from table1 where field1 like '%'+(select distinct field4 from table2)+'%' 提前感谢。只需按照您的喜好作为加入条件: select field1 , field2, field3 from table1 join (select distinct field4 from tabl

我想选择字段包含其他字段值的所有记录。我该怎么做?下面是我正在尝试的代码。

select field1 , field2, field3 
from table1
where field1 like '%'+(select distinct field4 from table2)+'%'


提前感谢。

只需按照您的喜好作为加入条件:

select field1 , field2, field3 
from table1
join (select distinct field4 from table2) x
  on field1 like '%'+field4+'%'

使用查询的原始结构,可以执行以下操作:

select field1, field2, field3 
from table1 t1
where exists (select 1
              from table2
              where t1.field1 like '%' + field4 + '%'
             );

此方法的优点是不会重复表1中的记录。例如,如果
表2
中有两行的值分别为
'a'
'b'
,而
表1中有一行的值为
'ab'
,则此方法只会从表1返回一次该行。

谢谢您的帮助。