我试图找到一种方法来比较字符字段和存储在查找表中的几个字符串通配符。例如,表A是我的主表。有一个名为" Code"在表A中我需要评估。我想找到所有行WHERE Code LIKE "ABC%", "A%", or "A12%"
。这三个字符串存储在名为表B的查找表中。我试图不惜一切代价避免对这些通配符进行硬编码。有没有办法做WHERE A.Code LIKE (SELECT * FROM B)
?
谢谢!
答案 0 :(得分:1)
您可以使用 INNER JOIN :
执行以下操作SELECT TableA.* FROM TableA
INNER JOIN TableB
ON TableA.Code LIKE TableB.Code + '%'
答案 1 :(得分:0)
您可以使用JOIN
:
SELECT DISTINCT a.*
FROM tabA a
JOIN tabB b
ON a.Code LIKE b.col_name;
<强> Rextester Demo 强>