2

我有一个父表A和子表B。

Parent Table A
---------------
AID,
AName,
Acode

Child Table B
-------------
AID,
BID,
BName,
BCode

我正在尝试形成一个查询以从 A 中检索行,并从 B 中为每个 AID 检索相应的行。所以基本上结果是每个 AID 的 A 的所有行和 B 的行。我希望我说得通。我需要为此使用连接吗?

4

2 回答 2

6

您将JOIN在表之间使用 a:

select a.aid,
  a.aname,
  a.acode,
  b.bname,
  b.bcode
from tableA a
inner join tableB b
  on a.aid = b.aid

JOIN介于aidfromtableAaidfrom之间tableB。我使用了一个INNER JOIN它将返回两个表中存在的所有行。如果您想返回所有行,tableA即使 中没有匹配的行tableB,那么您将使用LEFT JOIN.

如果您在学习连接语法方面需要帮助,这里有一个很好的连接可视化解释

于 2013-02-24T00:05:59.070 回答
1

是的你是。

select a.*, b.* from tableA a inner join TableB b on a.AID = b.AID;

于 2013-02-24T00:06:37.673 回答