我想要做的是以下概念:
SELECT field1,field2,field3
FROM table1
where field3 like '%'+(SELECT distinct field from table2)+'%'
Run Code Online (Sandbox Code Playgroud)
但这是不允许的,因为 like 不接受多个值。如何重写此查询,以便我可以通配符匹配具有来自另一个表的多个结果值的字段?
将其重写为 JOIN
SELECT t1.field1, t1.field2, t1.field3
FROM
table1 t1
JOIN
(SELECT distinct field AS fieldx from table2) t2
ON t1.field3 like CONCAT('%',fieldx,'%')
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
11894 次 |
最近记录: |