分开的JOIN形式主要INNER JOINS的

时间:2014-09-16 14:12:15

标签: sql

我想INNER JOIN一些表,然后插入一个条件,其中表的条目依赖于另一个表(没有与其他表连接)

这样的事情:

SELECT * FROM TABLE_A AS a
INNER JOIN TABLE_B AS b ON b.id_b=a.id_a
INNER JOIN TABLE_C AS c ON c.id_c=b.id_b

现在我想添加一个条件(可能是“WHERE”子句),它只选择TABLE_C中与另一个条件匹配的字段中的值,TABLE_D中字段中存在值

可能的陈述:

WHERE c.code = d.another_code AND d.reg_number LIKE 999%

如何在查询中声明TABLE_D,因为我不想与其他人一起加入?

换句话说,我想要交集3组(A,B,C)而另一组(组D)只与集合C相交

1 个答案:

答案 0 :(得分:0)

问题的标题运行时错误'13':... 似乎与内容不匹配,所以我只回答SQL部分。

也许这就是你想要的?

SELECT * FROM TABLE_A AS a
INNER JOIN TABLE_B AS b ON b.id_b=a.id_a
INNER JOIN TABLE_C AS c ON c.id_c=b.id_b
WHERE c.code = -- or possiby IN instead of =
(SELECT another_code FROM TABLE_D WHERE another_code LIKE '999%')

如果子查询可以返回多行,则需要使用WHERE c.code IN而不是WHERE c.code =