2

我想从表中删除所选字符串值包含在另一个表的另一个值中的所有记录(忽略区分大小写)。

例如:如果value1="Hello"(来自一个表)和value2-"Hello word"(来自另一个表),则应删除该记录。

DELETE FROM [table1] 
WHERE value1 LIKE  '%' + (SELECT value2 FROM [table2]) + '%'

但该 SQL 语句返回错误。

4

2 回答 2

5

您可以使用存在条件:

delete
from Table1 T1
where exists (select T2.value2 from Table2 T2 where T1.value1 like '%'+T2.value2+'%')
于 2016-08-30T10:45:45.507 回答
2
DELETE T1
FROM TABLE1 T1
INNER JOIN TABLE2 T2
  ON T1.VALUE1 LIKE ('%'+ T2.VALUE2 + '%') 

指定要从中删除的表。

于 2016-08-30T11:26:16.627 回答