我想加入2个表但没有INNER JOIN但是使用嵌套查询。
我有两张桌子:
表之间的链接是AField1和BField1。
SELECT AField1, AField2, AField3
FROM TableA
WHERE AField1 IN (
SELECT BField1 FROM TableB
WHERE BField3 like 'E11%'
);
我想在结果AField1,AField2,AField3,AField4 和 BField2,BField3
有什么想法吗?
由于
答案 0 :(得分:0)
我相信这是你想要实现的目标 - 显然,这个解决方案取决于加入完整性。所以你必须确保PK匹配,以确保你没有得到不正当的加入。
SELECT a.AField1,
a.AField2,
a.AField3,
bb.BField2,
bb.BField3
FROM TableA a
WHERE EXISTS
(SELECT 'X'
FROM TableB b
WHERE b.BField3 LIKE 'E11%'
AND a.AField1 = b.BField1
)
(SELECT * FROM TableB WHERE BField3 LIKE 'E11%'
) bb
AND a.AField1 = bb.BField1
在SQL中,您可以为表格添加别名 - 请在此处详细了解:When to use SQL Table Alias