从SQL中的多个表中进行SELECT

时间:2018-02-18 12:18:04

标签: sql ms-access

我正在尝试从2个表格中选择数据,游戏和团队。 我在Game表中有一个游戏列表,其中有名为htID,atID,apiID和其他一些列的列;我想从团队数据库中获取这些团队的名称。

我目前正在使用多个SQL语句,这些语句在理论上有效,但在我的程序中却没有,因为我无法一次打开多个数据库阅读器。

SELECT * FROM Game WHERE Played = 0 ORDER BY DT ASC
SELECT TN FROM Team WHERE apiID = htID 
SELECT TN FROM Team WHERE apiID = atID 

(其中htID和atID是我程序中包含从第一个SQL结果中获取的ID的变量)

有什么方法可以只用一个声明来完成上述操作吗?

1 个答案:

答案 0 :(得分:2)

你需要两个连接。在MS Access中,需要超出括号的用户:

select g.*, th.tn as htn, ta.tn as atn
from (game as g inner join
      team as th
      on g.htID = th.apiID
     ) innerjoin
     team as ta
     on g.atID = ta.apiID
where g.played = 0
order by date desc;